import type { AnyOfSchema, AnySchema, ItemSchema, ListSchema, MapSchema, PrimitiveSchema, RecordSchema, Schema, SetSchema, TupleSchema } from '../../../../schema/index.js'; import type { FormattedAnyOfJSONSchema } from './anyOf.js'; import type { FormattedItemJSONSchema } from './item.js'; import type { FormattedListJSONSchema } from './list.js'; import type { FormattedMapJSONSchema } from './map.js'; import type { FormattedPrimitiveJSONSchema } from './primitive.js'; import type { FormattedRecordJSONSchema } from './record.js'; import type { FormattedSetJSONSchema } from './set.js'; import type { FormattedTupleJSONSchema } from './tuple.js'; export declare const getFormattedValueJSONSchema: (schema: SCHEMA) => FormattedValueJSONSchema; export type FormattedValueJSONSchema = Schema extends SCHEMA ? Record : (SCHEMA extends AnySchema ? {} : never) | (SCHEMA extends PrimitiveSchema ? FormattedPrimitiveJSONSchema : never) | (SCHEMA extends SetSchema ? FormattedSetJSONSchema : never) | (SCHEMA extends ListSchema ? FormattedListJSONSchema : never) | (SCHEMA extends TupleSchema ? FormattedTupleJSONSchema : never) | (SCHEMA extends MapSchema ? FormattedMapJSONSchema : never) | (SCHEMA extends RecordSchema ? FormattedRecordJSONSchema : never) | (SCHEMA extends AnyOfSchema ? FormattedAnyOfJSONSchema : never) | (SCHEMA extends ItemSchema ? FormattedItemJSONSchema : never); export type FormattedValueJSONSchemaRec = number extends SCHEMAS['length'] ? FormattedValueJSONSchema[] : SCHEMAS extends [infer SCHEMAS_HEAD, ...infer SCHEMAS_TAIL] ? SCHEMAS_HEAD extends Schema ? SCHEMAS_TAIL extends Schema[] ? FormattedValueJSONSchemaRec ]> : never : never : RESULTS;