import type { AnyIterableTypeGuard, AnyTypeGuard, GuardType, NegateIterableTypeGuardFn, NegateTypeGuardFn } from './types'; type NegateGuard = (guard: Guard) => NegateTypeGuardFn>; type NegateIterableGuard = (guard: Guard) => NegateIterableTypeGuardFn>; /** * Negates the output of any given Type Guard and types accordingly using Exclude. * @example * ```ts * import { negateGuard, isNull } from 'type-guard-helpers' * const test = 'a' as string | null; * if (negateGuard(isNull, test)) { * test; // string * } * ``` * @category Type Guard Composer */ declare const negateGuard: NegateGuard; /** * Negates the output of any given Type Guard and types accordingly using Exclude. * @example * ```ts * import { negateIterableGuard, isNull } from 'type-guard-helpers' * const test = ['a'] as string[] | null; * if (negateIterableGuard(isNull, test)) { * test; // string[] * } * ``` * @category Type Guard Composer */ declare const negateIterableGuard: NegateIterableGuard; export { negateIterableGuard, negateGuard }; export type { NegateGuard, NegateIterableGuard };