@webiny/api-headless-cms-ddb-es
Version:
DynamoDB and Elasticsearch storage operations plugin for Headless CMS API.
30 lines (29 loc) • 1.1 kB
TypeScript
import { PluginsContainer } from "@webiny/plugins";
import { CmsEntry, StorageOperationsCmsModel } from "@webiny/api-headless-cms/types";
import { CmsIndexEntry } from "../../../types";
interface BaseTransformerParams {
plugins: PluginsContainer;
model: StorageOperationsCmsModel;
}
interface EntryTransformerParams extends BaseTransformerParams {
entry: CmsEntry;
storageEntry: CmsEntry;
transformedToIndex?: never;
}
interface TransformedEntryTransformerParams extends BaseTransformerParams {
entry?: never;
storageEntry?: never;
transformedToIndex: CmsIndexEntry;
}
interface TransformedKeysEntry {
entry: CmsEntry;
storageEntry: CmsEntry;
}
interface TransformerResult {
transformEntryKeys: () => TransformedKeysEntry;
transformToIndex: () => CmsIndexEntry;
getElasticsearchLatestEntryData: () => Promise<Record<string, any>>;
getElasticsearchPublishedEntryData: () => Promise<Record<string, any>>;
}
export declare const createTransformer: (params: EntryTransformerParams | TransformedEntryTransformerParams) => TransformerResult;
export {};