import { Key, ObjectType, Type, UnionType, ValidationError, ValidationFn } from './types'; export declare const flatten: (arr: T[][]) => T[]; export declare const isPlainObject: (o: unknown) => o is object; export declare const isObjectType: (o: Type) => o is ObjectType; export declare const isUnionType: (o: Type) => o is UnionType; export declare const error: (key: Key, message: string) => ValidationError; export declare const expected: (key: Key, what: string) => ValidationError; export declare const oneOf: (key: Key, validationFns: ValidationFn[]) => ValidationFn; export declare const allOf: (validationFns: ValidationFn[]) => ValidationFn; export declare const getKeys: (o: T) => (keyof T)[]; export declare const noExtraKeys: (baseKey: Key, keys: string[]) => ValidationFn; export declare const valueIs: (key: Key, expectedValue: unknown, name: string) => ValidationFn;