import { CustomTypeModelLegacySlice, CustomTypeModelSlice } from "./slice.cjs";
import { CustomTypeModelFieldType } from "./types.cjs";

//#region src/types/model/sliceZone.d.ts
/**
 * A Slice Zone custom type field.
 *
 * More details: {@link https://prismic.io/docs/slice}
 */
interface CustomTypeModelSliceZoneField<Slices extends Record<string, CustomTypeModelSlice | CustomTypeModelSharedSlice | CustomTypeModelLegacySlice> = Record<string, CustomTypeModelSlice | CustomTypeModelSharedSlice | CustomTypeModelLegacySlice>> {
  type: typeof CustomTypeModelFieldType.Slices | typeof CustomTypeModelFieldType.LegacySlices;
  fieldset?: string | null;
  config?: {
    labels?: Record<string, readonly CustomTypeModelSliceLabel[]> | null;
    choices?: Slices;
  };
}
/**
 * Label for a Slice.
 *
 * More details: {@link https://prismic.io/docs/slice}
 */
interface CustomTypeModelSliceLabel {
  name: string;
  display?: string;
}
/**
 * Type identifier for a Slice.
 *
 * More details: {@link https://prismic.io/docs/slice}
 */
declare const CustomTypeModelSliceType: {
  readonly Slice: "Slice";
  readonly SharedSlice: "SharedSlice";
};
/**
 * A shared Slice for a custom type.
 *
 * More details: {@link https://prismic.io/docs/slice}
 */
interface CustomTypeModelSharedSlice {
  type: typeof CustomTypeModelSliceType.SharedSlice;
}
//#endregion
export { CustomTypeModelSharedSlice, CustomTypeModelSliceLabel, CustomTypeModelSliceType, CustomTypeModelSliceZoneField };
//# sourceMappingURL=sliceZone.d.cts.map