@vtex/api
Version:
VTEX I/O API client
95 lines (94 loc) • 3.45 kB
TypeScript
import { InstanceOptions, IOContext, RequestTracingConfig } from '../..';
import { ExternalClient } from './ExternalClient';
export declare class MasterData extends ExternalClient {
constructor(ctx: IOContext, options?: InstanceOptions);
getSchema<T>({ dataEntity, schema }: GetSchemaInput, tracingConfig?: RequestTracingConfig): Promise<T>;
createOrUpdateSchema<T>({ dataEntity, schemaName, schemaBody }: CreateSchemaInput, tracingConfig?: RequestTracingConfig): Promise<T>;
getPublicSchema<T>({ dataEntity, schema }: GetSchemaInput, tracingConfig?: RequestTracingConfig): Promise<T>;
getDocument<T>({ dataEntity, id, fields }: GetDocumentInput, tracingConfig?: RequestTracingConfig): Promise<T>;
createDocument({ dataEntity, fields, schema }: CreateDocumentInput, tracingConfig?: RequestTracingConfig): Promise<DocumentResponse>;
createOrUpdateEntireDocument({ dataEntity, fields, id, schema }: CreateOrUpdateInput, tracingConfig?: RequestTracingConfig): Promise<DocumentResponse>;
createOrUpdatePartialDocument({ dataEntity, fields, id, schema }: CreateOrUpdateInput, tracingConfig?: RequestTracingConfig): Promise<DocumentResponse>;
updateEntireDocument({ dataEntity, id, fields, schema }: UpdateInput, tracingConfig?: RequestTracingConfig): Promise<void>;
updatePartialDocument({ dataEntity, id, fields, schema }: UpdateInput, tracingConfig?: RequestTracingConfig): Promise<void>;
searchDocuments<T>({ dataEntity, fields, where, pagination, schema, sort }: SearchInput, tracingConfig?: RequestTracingConfig): Promise<T[]>;
searchDocumentsWithPaginationInfo<T>({ dataEntity, fields, where, pagination, schema, sort }: SearchInput, tracingConfig?: RequestTracingConfig): Promise<{
data: T[];
pagination: {
total: number;
page: number;
pageSize: number;
};
}>;
scrollDocuments<T>({ dataEntity, fields, where, mdToken, schema, size, sort }: ScrollInput, tracingConfig?: RequestTracingConfig): Promise<{
mdToken: string;
data: ScrollResponse<T>;
}>;
deleteDocument({ dataEntity, id }: DeleteInput, tracingConfig?: RequestTracingConfig): Promise<import("../..").IOResponse<void>>;
}
interface PaginationArgs {
page: number;
pageSize: number;
}
interface DocumentResponse {
Id: string;
Href: string;
DocumentId: string;
}
interface GetSchemaInput {
dataEntity: string;
schema: string;
}
interface CreateSchemaInput {
dataEntity: string;
schemaName: string;
schemaBody: object;
}
interface GetDocumentInput {
dataEntity: string;
id: string;
fields: string[];
}
interface CreateDocumentInput {
dataEntity: string;
fields: object;
schema?: string;
}
interface CreateOrUpdateInput {
dataEntity: string;
fields: object;
id?: string;
schema?: string;
}
interface UpdateInput {
dataEntity: string;
id: string;
fields: object;
schema?: string;
}
interface SearchInput {
dataEntity: string;
fields: string[];
where?: string;
pagination: PaginationArgs;
schema?: string;
sort?: string;
}
interface ScrollInput {
dataEntity: string;
fields: string[];
where?: string;
schema?: string;
sort?: string;
size?: number;
mdToken?: string;
}
interface DeleteInput {
dataEntity: string;
id: string;
}
interface ScrollResponse<T> {
data: T[];
mdToken: string;
}
export {};