diff --git a/types/js-yaml/index.d.ts b/types/js-yaml/index.d.ts index b59741e74e..54ae308639 100644 --- a/types/js-yaml/index.d.ts +++ b/types/js-yaml/index.d.ts @@ -15,7 +15,7 @@ export class Type { resolve(data: any): boolean; construct(data: any): any; instanceOf: object | null; - predicate: string | null; + predicate: ((data: object) => boolean) | null; represent: ((data: object) => any) | { [x: string]: (data: object) => any; } | null; defaultStyle: string | null; styleAliases: { [x: string]: any; }; @@ -82,7 +82,7 @@ export interface TypeConstructorOptions { resolve?: (data: any) => boolean; construct?: (data: any) => any; instanceOf?: object; - predicate?: string; + predicate?: (data: object) => boolean; represent?: ((data: object) => any) | { [x: string]: (data: object) => any }; defaultStyle?: string; styleAliases?: { [x: string]: any; }; diff --git a/types/js-yaml/js-yaml-tests.ts b/types/js-yaml/js-yaml-tests.ts index 304da7731d..024054a6fb 100644 --- a/types/js-yaml/js-yaml-tests.ts +++ b/types/js-yaml/js-yaml-tests.ts @@ -23,7 +23,7 @@ const typeConstructorOptions: TypeConstructorOptions = { resolve: fn, construct: fn, instanceOf: obj, - predicate: str, + predicate: (obj) => false, represent: fn, defaultStyle: str, styleAliases: map @@ -104,7 +104,7 @@ type.resolve; type.construct; // $ExpectType object | null type.instanceOf; -// $ExpectType string | null +// $ExpectType ((data: object) => boolean) | null type.predicate; // $ExpectType ((data: object) => any) | { [x: string]: (data: object) => any; } | null type.represent;