UNPKG

@brizy/media-gallery

Version:
38 lines (37 loc) 2.17 kB
/** * Check if value a is identical to to value b * Note: This is the classic equality by reference, * but with type guard support */ export declare const is: <A extends B, B>(a: A) => (b: B) => b is A; /** * Check if a value T matches one of the provided predicates * * Used to check current union value */ export declare function isOneOf<T, A extends T>(ps: [(v: T) => v is A]): (v: T) => v is A; export declare function isOneOf<T, A extends T, B extends T>(ps: [(v: T) => v is A, (v: T) => v is B]): (v: T) => v is A | B; export declare function isOneOf<T, A extends T, B extends T, C extends T>(ps: [(v: T) => v is A, (v: B) => v is B, (v: T) => v is C]): (v: T) => v is A | B | C; export declare function isOneOf<T, A extends T, B extends T, C extends T, D extends T>(ps: [(v: T) => v is A, (v: B) => v is B, (v: C) => v is C, (v: T) => v is D]): (v: T) => v is A | B | C | D; export declare function isOneOf<T, A extends T, B extends T, C extends T, D extends T, E extends T>(ps: [(v: T) => v is A, (v: B) => v is B, (v: C) => v is C, (v: D) => v is D, (v: T) => v is E]): (v: T) => v is A | B | C | D | E; export declare function isOneOf<T, A extends T, B extends T, C extends T, D extends T, E extends T, F extends T>(ps: [(v: T) => v is A, (v: B) => v is B, (v: C) => v is C, (v: D) => v is D, (v: E) => v is E, (v: T) => v is F]): (v: T) => v is A | B | C | D | E | F; export declare function isOneOf<T, A extends T, B extends T, C extends T, D extends T, E extends T, F extends T, G extends T>(ps: [ (v: T) => v is A, (v: B) => v is B, (v: C) => v is C, (v: D) => v is D, (v: E) => v is E, (v: F) => v is F, (v: T) => v is G ]): (v: T) => v is A | B | C | D | E | F | G; export declare function isOneOf<T, A extends T, B extends T, C extends T, D extends T, E extends T, F extends T, G extends T, H extends T>(ps: [ (v: T) => v is A, (v: B) => v is B, (v: C) => v is C, (v: D) => v is D, (v: E) => v is E, (v: F) => v is F, (v: G) => v is G, (v: T) => v is H ]): (v: T) => v is A | B | C | D | E | F | G | H; export declare function isOneOf<T>(ps: Array<(v: T) => boolean>): (v: T) => boolean;