@sysdoc/sharepoint-utils
Version:
Sysdoc's core Sharepoint utilities
30 lines (29 loc) • 1.15 kB
TypeScript
/*!
* Copyright Sysdoc @ 2019
*/
import { IItemAddResult, IItemUpdateResult } from "@pnp/sp-commonjs/items/types";
import { Dictionary } from "@sysdoc/utilities";
import { IPnPField } from "../jsom/IPnPField";
import { ISPRestQueryConfig } from "./SPBasicRestProvider";
export interface ISPBasicRestProvider {
listTitle: string;
fields: string[];
fieldPrefix?: string;
contentTypeId?: string;
includeFields?: string[];
expandFields?: string[];
supportsAttachments?: boolean;
getSchema(): Promise<Dictionary<IPnPField>>;
whenReady(): Promise<Dictionary<IPnPField>>;
createSchemaFromFields(fields: IPnPField[]): any;
toItem(item: any): any;
prepareObject(obj: any): any;
create(obj: any): Promise<IItemAddResult>;
update(obj: any): Promise<IItemUpdateResult>;
updateBatch(objs: any[], updateKeys?: string[]): Promise<void>;
delete(key: number): Promise<void>;
deleteBatch(key: number[]): Promise<void>;
get(key: number): Promise<any>;
getByQuery(filter: string, config?: ISPRestQueryConfig): Promise<any[]>;
getAll(): Promise<any[]>;
}