Typescript definitions