import * as prismic from "@prismicio/client";
import { ModelValueMap, Seed } from "../types";
import { MockBooleanValueConfig, MockColorValueConfig, MockContentRelationshipValueConfig, MockDateValueConfig, MockEmbedValueConfig, MockGeoPointValueConfig, MockGroupValueConfig, MockImageValueConfig, MockIntegrationFieldValueConfig, MockKeyTextValueConfig, MockLinkToMediaValueConfig, MockLinkValueConfig, MockNumberValueConfig, MockRichTextValueConfig, MockSelectValueConfig, MockSliceZoneValueConfig, MockTimestampValueConfig, MockTitleValueConfig, MockUIDValueConfig } from "../value";
import { Faker } from "./createFaker";
export type ValueForModelMapConfigs = {
    boolean?: MockBooleanValueConfig;
    color?: MockColorValueConfig;
    contentRelationship?: MockContentRelationshipValueConfig;
    date?: MockDateValueConfig;
    embed?: MockEmbedValueConfig;
    geoPoint?: MockGeoPointValueConfig;
    group?: MockGroupValueConfig;
    image?: MockImageValueConfig;
    integration?: MockIntegrationFieldValueConfig;
    keyText?: MockKeyTextValueConfig;
    link?: MockLinkValueConfig;
    linkToMedia?: MockLinkToMediaValueConfig;
    number?: MockNumberValueConfig;
    richText?: MockRichTextValueConfig;
    select?: MockSelectValueConfig;
    sliceZone?: MockSliceZoneValueConfig;
    timestamp?: MockTimestampValueConfig;
    title?: MockTitleValueConfig;
    uid?: MockUIDValueConfig;
};
type ValueForModelMapConfig<ModelMap extends Record<string, prismic.CustomTypeModelField>> = {
    map: ModelMap;
    configs?: ValueForModelMapConfigs;
} & ({
    seed: Seed;
    faker?: never;
} | {
    faker: Faker;
    seed?: never;
});
export declare const valueForModelMap: <ModelMap extends Record<string, prismic.CustomTypeModelField>>(config: ValueForModelMapConfig<ModelMap>) => ModelValueMap<ModelMap>;
export {};
