Top community members
All Wiki Articles Create Wiki Article

In the past we had a dream,
to have place where we could share IT knowledge,
to ask questions without fear that someone will judge us.

Now we are a group of people who make this dream come true. ❤ 💻

If you think sharing knowledge and helping other is valuable.

join our community - Click here

TypeScript - interface constructor

0 contributions
11 points

In TypeScript interface with a constructor can not be implemeneted by any class, but it is possible use constructor interface in following way.

Constructor interface example

interface ISquare {
    getName() : string;
    
    // other method declarations...
}

interface ISquareConstructor {
    new (name : string) : ISquare;
}

class LocalSquare implements ISquare {
    
    public constructor(private name : string) {
        // nothing here...
    }

    public getName() : string {
        return this.name;
    }

    // other method definitions...
}

function createSquare(builder : ISquareConstructor, name : string) : ISquare {
    // ISquareConstructor -> new (name : string) : ISquare
    return new builder(name);
}

let square = createSquare(LocalSquare, 'Square');

console.log(square.getName());
// other method usage...

Output:

Square

Run it online here.

References

  1. Difference between the static and instance sides of classes - Microsoft Docs

0 contributions

Checkout latest Findings & News:

Checkout latest questions:

Checkout latest wiki articles:

Hey 👋
Would you like to know what we do?
  • Dirask is IT community, where we share coding knowledge and help each other to solve coding problems.
  • We welcome everyone,
    no matter what the experience,
    no matter how basic the question is,
    this community will help you.
Read more