i have typescript definition file interface
interface istreamhandler<e> { stopstream(): void; process(e : e); onready(bready : boolean):void; }
i want instantiate declare variable like
declare var streamhandler: istreamhandler<e>;
but not allowed.
how create definition syntax ?
var sh = new streamhandler<animal>(); sh.process(e: animal){//code impl}
the problem interface need implementation both static , instance interfaces, plus constructor(new()
). work:
interface istreamhandler_static { new<e>():istreamhandler<e>; } interface istreamhandler<e> { stopstream(): void; process(e : e); onready(bready : boolean):void; } declare var streamhandler: istreamhandler_static;
but if it's external, it's better declare class.
interface istreamhandler<e> { stopstream(): void; process(e : e); onready(bready : boolean):void; } declare class streamhandler<e> implements istreamhandler<e> { constructor() {} stopstream(): void; process(e : e); onready(bready : boolean):void; }