import { ObjectTypedSchema } from '../core/ObjectTypedSchema'; import { OneOf, OneOfConfigMessage } from '../types/OneOfTypes'; import { SchemaMap } from '../types/SchemaMap'; import { NullableType } from '../types/types'; export declare class ObjectSchema = object, Final = any> extends ObjectTypedSchema { protected message: string; protected rule: (value: any) => boolean; protected clone(): ObjectSchema; /** * Extends current schema object */ extend(schemas: SchemaMap): ObjectSchema; /** * OneOf makes the validation only false when all schema keys are false (have errors in them) * This is exclusive to oneOf schema, all other validation still will take place, */ oneOf(oneOfKey: OneOf, oneOfConfig?: OneOfConfigMessage): this; oneOf(oneOfKey: Key[], schema: SchemaMap[Key], oneOfConfig?: OneOfConfigMessage): this; } export declare const object: (schemas?: SchemaMap, message?: string) => ObjectSchema;