import { IPagedDataProvider } from "./IPagedDataProvider"; import { IHttpClient } from "../http/IHttpClient"; /** * Uses RenderListDataAsStream (CamlQuery) to get list items. */ export declare class SPListItemCamlPagedDataProvider implements IPagedDataProvider { protected spHttpClient: IHttpClient; protected siteUrl: string; protected listId: string; selectedFields: string[]; mapMethod?: (item: any) => T; pageSize: number; protected orderBy: string; protected orderDir: "ASC" | "DESC"; protected lastValue: string; protected previousPages: string[]; protected previousPageIndex: number; protected currentLink: string; protected query: string; protected lastId: number; protected lastRow: number; allItemsCount: number; recursive: boolean; /** * Creates new instance of PagedDataProvider which will use caml query to filter data. * @param spHttpClient SharePoint REST API client - SPFxSPHttpClient for example. * @param siteUrl Site url of a site hosting the list. * @param listId List id of list You want to query. * @param selectedFields Array of internal names of fields You want to get (optional). * @param mapMethod Custom method used to map result from RenderListDataAsStream to Your domain object (optional). */ constructor(spHttpClient: IHttpClient, siteUrl: string, listId: string, selectedFields?: string[], mapMethod?: (item: any) => T); getData(): Promise; getAllItemsCount(): Promise; setOrder(orderBy: string, orderDir: "ASC" | "DESC"): void; protected getCamlQuery(): string; protected buildPostBody(camlQuery: string): { parameters: { RenderOptions: number; ViewXml: string; }; }; getQuery(): string; getCurrentPage(): number; protected getResponse(apiResponse: any): Promise; getDataWithAPI(url: string): Promise; protected getLastFieldValue(rows: any[]): any; setQuery(value: string): void; getNextPage(): Promise; isNextPageAvailable(): boolean; getPreviousPage(): Promise; isPreviousPageAvailable(): boolean; }