johnny 5 johnny 5 - 1 year ago 138
TypeScript Question

Typescript strongly type void Function

I'm trying to write an interface which takes a function in as a parameter:

Currently I'm trying this

export interface EditOptions {
isEditing: boolean;
save: () => {};
}


I've tried a few things to assign the function:

editOptions: EditOptions = { isEditing: false, save: this.save };
editOptions: EditOptions = { isEditing: false, save: () => { this.save() } };


Neither work instead I receive this error:

enter image description here

I Know that for now I can use
:any
but what is the proper way to strongly type a void function

Answer Source

interface you can define as :

export interface EditOptions {
 isEditing: boolean;
 save: () => void;
 }

and you can use/assign it as :

editOptions: EditOptions = { isEditing: false, save: () => { this.anyFunction() } };
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download