UNPKG

@sysdoc/sharepoint-utils

Version:

Sysdoc's core Sharepoint utilities

26 lines (25 loc) 1.16 kB
/*! * Copyright Sysdoc @ 2019 */ /// <reference types="sharepoint" /> import { FormFieldModel } from "@sysdoc/forms"; import { Dictionary } from "@sysdoc/utilities"; import { ExecutorFn } from "../util/executor"; import { IPnPField } from "./IPnPField"; import { ISPFieldDecorator } from "./ISPFieldDecorator"; export interface ISPListProvider<Key, T> { listTitle: string; webUrl: string; update(obj: T, exec?: ExecutorFn): Promise<Partial<T>>; get(key: Key, exec?: ExecutorFn): Promise<Partial<T>>; getByQuery(query: SP.CamlQuery, exec?: ExecutorFn): Promise<Partial<T>[]>; save(obj: T, exec?: ExecutorFn): Promise<Partial<T>>; create(obj: T, exec?: ExecutorFn): Promise<Partial<T>>; delete(key: Key, exec?: ExecutorFn): Promise<void>; getSchema(): Promise<Dictionary<IPnPField>>; setSchema(schema: Dictionary<IPnPField>): void; getDecorator<Value>(key: string): ISPFieldDecorator<Value, T>; getObjectFromFields(fields: FormFieldModel<any>[]): T; getObjectFromFieldsOnline(fields: FormFieldModel<any>[]): T; getFormValuesFromFields(fields: FormFieldModel<any>[]): any; }