import * as prismic from "@prismicio/client";
import { ValueForModelMapConfigs } from "../lib/valueForModelMap";
import { MockValueConfig, MockValueStateConfig, ModelValue } from "../types";
export type MockSliceZoneValueConfig<Model extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField, State extends prismic.FieldState = prismic.FieldState> = {
    sharedSliceModels?: prismic.SharedSliceModel[];
    itemsCount?: State extends "empty" ? 0 : number;
    primaryFieldConfigs?: ValueForModelMapConfigs;
    itemsFieldConfigs?: ValueForModelMapConfigs;
} & MockValueConfig<Model> & MockValueStateConfig<State>;
export declare const sliceZone: <Model extends prismic.CustomTypeModelSliceZoneField<Record<string, prismic.CustomTypeModelSlice<Record<string, prismic.CustomTypeModelFieldForNestedGroup>, Record<string, prismic.CustomTypeModelFieldForNestedGroup>> | prismic.CustomTypeModelSharedSlice | prismic.CustomTypeModelLegacySlice>> = prismic.CustomTypeModelSliceZoneField<Record<string, prismic.CustomTypeModelSlice<Record<string, prismic.CustomTypeModelFieldForNestedGroup>, Record<string, prismic.CustomTypeModelFieldForNestedGroup>> | prismic.CustomTypeModelSharedSlice | prismic.CustomTypeModelLegacySlice>>, State extends prismic.FieldState = prismic.FieldState>(config: MockSliceZoneValueConfig<Model, State>) => ModelValue<Model, State>;
