import type { IsCompatible, IsEqual, IsIdentical, IsNonStrictEqual, IsRelated } from '../../../type/index.js'; interface Is { (_?: B): A extends B ? T : F; bigint: IsIdentical; boolean: IsIdentical; compatibleWith(_?: B): IsCompatible; equalTo(_?: B): IsEqual; false: IsIdentical; identicalTo(_?: B): IsIdentical; nonStrictEqualTo(_?: B): IsNonStrictEqual; not: Is; number: IsIdentical; object: IsIdentical; relatedTo(_?: B): IsRelated; strictSubtypeOf(_?: B): A extends B ? (B extends A ? F : T) : F; string: IsIdentical; subtypeOf(_?: B): A extends B ? T : F; symbol: IsIdentical; true: IsIdentical; } /** @strip */ export declare function $Is(_?: T): Is; /** @internal */ declare function _Assert<_A extends true = true, _B extends true = true, _C extends true = true, _D extends true = true, _E extends true = true, _F extends true = true, _G extends true = true, _H extends true = true, _I extends true = true, _J extends true = true, _K extends true = true, _L extends true = true, _M extends true = true, _N extends true = true, _O extends true = true, _P extends true = true, _Q extends true = true>(..._expects: true[]): void; /** @internal */ declare const _AssertInterface: { /** * IsSubtype * * @example * * ```ts * Assert.is<123, number>() * ``` */ is: <_A extends B, B>() => void; isSubtype: <_A extends B, B>() => void; isSupertype: () => void; }; /** @strip Use `@voltiso/transform/strip` to strip from production code */ export declare const $Assert: typeof _AssertInterface & typeof _Assert; export {}; //# sourceMappingURL=$Assert.d.ts.map