import type { Intersect, SchemaOptions } from '@traversable/registry'; import { symbol as Symbol, URI } from '@traversable/registry'; import type * as t from './schema.js'; export { null_ as null, undefined_ as undefined, true_ as true, false_ as false, isComposite as composite, }; export declare const conjunctiveIdentity: () => true; export declare const disjunctiveIdentity: () => false; declare const null_: (u: unknown) => u is null; declare const undefined_: (u: unknown) => u is undefined; export declare const any: (_: unknown) => _ is unknown; export declare const never: (_: unknown) => _ is never; export declare function array(u: unknown): u is readonly unknown[]; export declare function array$(guard: (u: unknown) => u is T): (u: unknown) => u is readonly T[]; export declare function optional$(guard: (u: unknown) => u is T): (u: unknown) => u is undefined | T; export declare const bigint: (u: unknown) => u is bigint; export declare const boolean: (u: unknown) => u is boolean; export declare const number: (u: unknown) => u is number; export declare const string: (u: unknown) => u is string; export declare const symbol: (u: unknown) => u is symbol; export declare const object: (u: unknown) => u is { [x: string]: unknown; }; export declare const is: { array: typeof array$; record: typeof record; union: typeof union; intersect: typeof intersect; optional: typeof optional$; object: typeof object$; anyObject: (u: unknown) => u is { [x: string]: unknown; }; anyArray: typeof array; tuple: typeof tuple$; unknown: (_: unknown) => _ is unknown; }; export declare function literally(value: T): (u: unknown) => u is T; export declare function literally(...values: readonly T[]): (u: unknown) => u is T; export declare const key: (u: unknown) => u is keyof any; export declare const nonnullable: (u: {} | null | undefined) => u is {}; export declare const showable: (u: unknown) => u is boolean | number | bigint | string; export declare const scalar: (u: unknown) => u is undefined | null | boolean | number | string; export declare const primitive: (u: unknown) => boolean; declare const true_: (u: unknown) => u is true; declare const false_: (u: unknown) => u is false; export declare const defined: (u: {} | null | undefined) => u is {} | null; export declare const notnull: (u: {} | null | undefined) => u is {} | undefined; export declare const nullable: (u: {} | null | undefined) => u is null | undefined; export declare const nonempty: { array: (xs: T[] | readonly T[]) => xs is { [0]: NonNullable; } & typeof xs; }; export { isOptionalSchema as __isOptionalSchema }; declare function isOptionalSchema(u: unknown): u is ((u: unknown) => u is unknown) & { [Symbol.tag]: URI.optional; def: (u: unknown) => u is unknown; }; export declare function record(guard: (u: unknown) => u is T): (u: unknown) => u is globalThis.Record; export declare function record(keyGuard: (k: keyof any) => k is K, valueGuard: (u: unknown) => u is T): (u: unknown) => u is globalThis.Record; declare function union u is unknown)[]>(guard: readonly [...T]): (u: unknown) => u is T[number]; declare function intersect u is unknown)[]>(guard: readonly [...T]): (u: unknown) => u is Intersect; type Target = S extends { (_: any): _ is infer T; } ? T : S extends { (u: infer T): boolean; } ? T : never; export declare function object$(predicates: Record boolean>, $?: SchemaOptions): (got: unknown) => got is object; export declare function object$(predicates: Record, $?: SchemaOptions): (got: unknown) => got is object; export declare function record$(guard: (u: unknown) => u is T): (u: unknown) => u is globalThis.Record; export declare function record$(keyGuard: (k: keyof any) => k is K, valueGuard: (u: unknown) => u is T): (u: unknown) => u is globalThis.Record; export declare function intersect$ u is unknown)[]>(...guard: [...T]): (u: unknown) => u is Intersect; export declare function union$ u is unknown)[]>(...guard: [...T]): (u: unknown) => u is T[number]; export declare function tuple$(options: Opts): (qs: T) => (u: unknown) => u is { [I in keyof T]: Target; }; //# sourceMappingURL=predicates.d.ts.map