type Promisable = T | Promise; declare namespace escalade { export type Callback = ( directory: string, files: string[], ) => Promisable; } declare function escalade( directory: string, callback: escalade.Callback, ): Promise; export = escalade;