import "../_dnt.polyfills.js"; export interface Guard { (value: T): value is Y; } export declare function is(guard: undefined): Guard; export declare function is(guard: null): Guard; export declare function is(guard: typeof Number): Guard; export declare function is(guard: typeof String): Guard; export declare function is(guard: typeof Boolean): Guard; export declare function is(guard: typeof BigInt): Guard; export declare function is(guard: typeof Symbol): Guard; export declare function is(guard: true): Guard; export declare function is(guard: false): Guard; export declare function is(guard: abstract new (...args: any) => T): Guard; export declare function is(guard: U): Guard>; export type SmartExclude = T2 extends null | undefined ? T1 & Exclude<{} | null | undefined, T2> : Exclude;