@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
70 lines (69 loc) • 5.92 kB
text/typescript
import { Faker } from "../lib/createFaker.cjs";
import { GroupFieldModelMap, NestedGroupFieldModelMap, Seed, SlicePrimaryFieldModelMap, WithoutFakerConfig } from "../types.cjs";
import { MockBooleanModelConfig } from "./boolean.cjs";
import { MockColorModelConfig } from "./color.cjs";
import { MockContentRelationshipModelConfig } from "./contentRelationship.cjs";
import { MockCustomTypeModelConfig, customType } from "./customType.cjs";
import { MockDateModelConfig } from "./date.cjs";
import { MockEmbedModelConfig } from "./embed.cjs";
import { MockGeoPointModelConfig } from "./geoPoint.cjs";
import { MockGroupModelConfig } from "./group.cjs";
import { MockImageModelConfig } from "./image.cjs";
import { MockIntegrationFieldModelConfig } from "./integration.cjs";
import { MockKeyTextModelConfig } from "./keyText.cjs";
import { MockLinkModelConfig, link } from "./link.cjs";
import { MockLinkToMediaModelConfig, linkToMedia } from "./linkToMedia.cjs";
import { MockNumberModelConfig } from "./number.cjs";
import { MockRichTextModelConfig, richText } from "./richText.cjs";
import { MockSelectModelConfig } from "./select.cjs";
import { MockSharedSliceModelConfig } from "./sharedSlice.cjs";
import { MockSharedSliceVariationModelConfig } from "./sharedSliceVariation.cjs";
import { MockSliceModelConfig } from "./slice.cjs";
import { MockSliceZoneModelConfig } from "./sliceZone.cjs";
import { MockTimestampModelConfig } from "./timestamp.cjs";
import { MockTitleModelConfig } from "./title.cjs";
import { MockUIDModelConfig } from "./uid.cjs";
import { MockTableModelConfig } from "./table.cjs";
import { BuildMockGroupFieldMapConfig } from "./buildMockGroupFieldMap.cjs";
import * as prismic from "@prismicio/client";
//#region src/model/createModelMockFactory.d.ts
declare const createModelMockFactory: (...args: ConstructorParameters<typeof ModelMockFactory>) => ModelMockFactory;
type ModelMockFactoryConfig = {
seed: Seed;
} | {
faker: Faker;
};
declare class ModelMockFactory {
private faker;
constructor(config: ModelMockFactoryConfig);
get seed(): Seed;
buildMockGroupFieldMap(config?: WithoutFakerConfig<BuildMockGroupFieldMapConfig>): NestedGroupFieldModelMap;
boolean(config?: WithoutFakerConfig<MockBooleanModelConfig>): prismic.CustomTypeModelBooleanField;
color(config?: WithoutFakerConfig<MockColorModelConfig>): prismic.CustomTypeModelColorField;
contentRelationship<CustomTypeIDs extends string, Tags extends string>(config?: WithoutFakerConfig<MockContentRelationshipModelConfig<CustomTypeIDs, Tags>>): prismic.CustomTypeModelContentRelationshipField<CustomTypeIDs, Tags>;
customType<Definition extends prismic.CustomTypeModelTab | prismic.CustomTypeModelDefinition>(config?: WithoutFakerConfig<MockCustomTypeModelConfig<Definition>>): ReturnType<typeof customType<Definition>>;
date(config?: WithoutFakerConfig<MockDateModelConfig>): prismic.CustomTypeModelDateField;
embed(config?: WithoutFakerConfig<MockEmbedModelConfig>): prismic.CustomTypeModelEmbedField;
geoPoint(config?: WithoutFakerConfig<MockGeoPointModelConfig>): prismic.CustomTypeModelGeoPointField;
group<Fields extends GroupFieldModelMap>(config?: WithoutFakerConfig<MockGroupModelConfig<Fields>>): prismic.CustomTypeModelGroupField<Fields>;
image<ThumbnailNames extends string = string>(config?: WithoutFakerConfig<MockImageModelConfig<ThumbnailNames>>): prismic.CustomTypeModelImageField<ThumbnailNames>;
integration(config?: WithoutFakerConfig<MockIntegrationFieldModelConfig>): prismic.CustomTypeModelIntegrationField;
keyText(config?: WithoutFakerConfig<MockKeyTextModelConfig>): prismic.CustomTypeModelKeyTextField;
link<AllowTargetBlank extends boolean = boolean>(config?: WithoutFakerConfig<MockLinkModelConfig<AllowTargetBlank>>): ReturnType<typeof link<AllowTargetBlank>>;
linkToMedia(config?: WithoutFakerConfig<MockLinkToMediaModelConfig>): ReturnType<typeof linkToMedia>;
number(config?: WithoutFakerConfig<MockNumberModelConfig>): prismic.CustomTypeModelNumberField;
richText<WithMultipleBlocks extends boolean = boolean>(config?: WithoutFakerConfig<MockRichTextModelConfig<WithMultipleBlocks>>): ReturnType<typeof richText<WithMultipleBlocks>>;
select<Option extends string, DefaultOption extends Option>(config?: WithoutFakerConfig<MockSelectModelConfig<Option, DefaultOption>>): prismic.CustomTypeModelSelectField<Option, DefaultOption>;
sharedSlice<Variation extends prismic.SharedSliceModelVariation>(config?: WithoutFakerConfig<MockSharedSliceModelConfig<Variation>>): prismic.SharedSliceModel<string, Variation>;
sharedSliceChoice(): prismic.CustomTypeModelSharedSlice;
sharedSliceVariation<ID extends string, PrimaryFields extends SlicePrimaryFieldModelMap, ItemsFields extends NestedGroupFieldModelMap>(config?: WithoutFakerConfig<MockSharedSliceVariationModelConfig<ID, PrimaryFields, ItemsFields>>): prismic.SharedSliceModelVariation<ID, PrimaryFields, ItemsFields>;
slice<NonRepeatFields extends NestedGroupFieldModelMap, RepeatFields extends NestedGroupFieldModelMap>(config?: WithoutFakerConfig<MockSliceModelConfig<NonRepeatFields, RepeatFields>>): prismic.CustomTypeModelSlice<NonRepeatFields, RepeatFields>;
sliceZone<Slices extends Record<string, prismic.CustomTypeModelSlice | prismic.CustomTypeModelSharedSlice>>(config?: WithoutFakerConfig<MockSliceZoneModelConfig<Slices>>): prismic.CustomTypeModelSliceZoneField<Slices>;
table(config?: WithoutFakerConfig<MockTableModelConfig>): prismic.CustomTypeModelTableField;
timestamp(config?: WithoutFakerConfig<MockTimestampModelConfig>): prismic.CustomTypeModelTimestampField;
title(config?: WithoutFakerConfig<MockTitleModelConfig>): prismic.CustomTypeModelTitleField;
uid(config?: WithoutFakerConfig<MockUIDModelConfig>): prismic.CustomTypeModelUIDField;
}
//#endregion
export { ModelMockFactory, createModelMockFactory };
//# sourceMappingURL=createModelMockFactory.d.cts.map