export declare function isNotNull<Type>(value: Type): value is Exclude<Type, null>;
export declare function isNonNullable<Type>(value: Type): value is NonNullable<Type>;
export declare function isArrayOf<ElementType>(isElementType: (element: unknown) => element is ElementType): (value: unknown) => value is ElementType[];
export declare function isNonArrayObject(value: unknown): value is Record<string, unknown>;
export declare function isRecordOf<ValueType>(isValueType: (value: unknown) => value is ValueType): (value: unknown) => value is Record<string, ValueType>;
export declare function isStringWithPrefix<const Prefix extends string>(prefix: Prefix): (string: unknown) => string is `${Prefix}${string}`;
export declare function isOneOf<const Type = never>(elements: readonly Type[]): (value: unknown) => value is Type;
/**
 * Allows convenient narrowing on nullish or falsy values.
 *
 * @example
 */
export declare function throwError(error?: Error | string | undefined): never;
export declare function assertType<Type>(test: (value: unknown) => value is Type, error?: Error | string | ((value: unknown) => Error) | undefined): (value: unknown) => Type;
