import { False, True, And, Or, Not } from './conditionals'; /** no-doc */ export declare type KnownProblemPrototypeKeys = 'toString' | 'toLocaleString' | 'hasOwnProperty' | 'isPrototypeOf' | 'propertyIsEnumerable' | 'constructor' | 'valueOf'; /** no-doc */ export declare type ArrayPrototypeKeys = keyof unknown[]; /** no-doc */ export declare type NumberPrototypeKeys = keyof number; /** no-doc */ export declare type BooleanPrototypeKeys = keyof false; /** no-doc */ export declare type StringPrototypeKeys = keyof string; /** no-doc */ export declare type ObjectPrototypeKeys = keyof Object; /** no-doc */ export declare type FunctionPrototypeKeys = keyof Function; export declare type IsNever = Not<(Record & Record)[S]>; export declare type IsType = X extends T ? True : False; export declare type IsArray = T extends unknown[] ? True : False; export declare type IsNumber = T extends number ? True : False; export declare type IsString = T extends string ? True : False; export declare type IsFunction = Or; export declare type IsStringFunction = And, IsNever>; export declare type IsBoolean = T extends boolean ? True : False; export declare type IsNull = T extends null ? True : False; export declare type IsUndefined = T extends undefined ? True : False; export declare type IsNil = Or, IsUndefined>; export declare type IsObject = And>, Not>>>; export declare type IsAny = 0 extends (1 & T) ? True : False;