Bonjour à tous

J'ai besoin de faire du dev en typescript pour un projet et je n'arrive pas a comprendre comment fonctionne le mot clé "prototype" dans une interface.

Par exemple prenons le cas des Errors. On trouve ceci (lib es5) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
interface Error {
    name: string;
    message: string;
    stack?: string;
}
 
interface ErrorConstructor {
    new(message?: string): Error;
    (message?: string): Error;
    readonly prototype: Error;
}
 
declare var Error: ErrorConstructor;

Quelle est la signification de la ligne : readonly prototype: Error;

Autrement posée, ma question est quelle est la différence entre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
export interface MyConstructorInterface {
    new (data: any) : MyInterface;
    readonly prototype: MyInterface
}
et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
export interface MyConstructorInterface {
    new (data: any) : MyInterface;
}


Merci a vous pour vos retours