import { SchemaReference, SchemaType, SchemaStringFormat, SchemaEnum } from '../../types/schemas';
export type BlockSchemaReferenceResponse = {
    block_schema_checksum: string;
    block_type_slug: string;
};
export type BlockSchemaReferencesResponse = Record<string, BlockSchemaReferenceResponse | undefined>;
export type SchemaPropertiesResponse = Record<string, SchemaPropertyResponse | undefined>;
export type SchemaDefinitionsResponse = Record<string, SchemaResponse | undefined>;
export type SchemaPropertyResponse = {
    block_type_slug?: string;
    $ref?: SchemaReference;
    anyOf?: SchemaResponse[];
    allOf?: SchemaResponse[];
    example?: string;
    alias?: string;
    default?: unknown;
    description?: string;
    enum?: SchemaEnum<unknown>;
    exclusiveMaximum?: number;
    exclusiveMinimum?: number;
    format?: SchemaStringFormat;
    items?: SchemaPropertyResponse;
    maximum?: number;
    maxItems?: number;
    maxLength?: number;
    minimum?: number;
    minItems?: number;
    minLength?: number;
    multipleOf?: number;
    pattern?: string;
    properties?: SchemaPropertiesResponse;
    required?: string[];
    title?: string;
    type?: SchemaType;
    uniqueItems?: boolean;
};
export type SchemaResponse = SchemaPropertyResponse & {
    block_schema_references?: BlockSchemaReferenceResponse;
    secret_fields?: string[];
    definitions?: SchemaDefinitionsResponse;
};
