/** * This file is part of the NocoBase (R) project. * Copyright (c) 2020-2024 NocoBase Co., Ltd. * Authors: NocoBase Team. * * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License. * For more information, please refer to: https://www.nocobase.com/agreement. */ import { AxiosRequestConfig } from 'axios'; import { BaseRecordResource } from './baseRecordResource'; export declare class MultiRecordResource extends BaseRecordResource { protected _data: { value: TDataItem[]; }; protected _meta: { value: Record; }; private refreshTimer; private refreshWaiters; protected createActionOptions: {}; protected updateActionOptions: {}; protected _refreshActionName: string; protected request: { method: string; params: Record; headers: Record; }; get supportsFilter(): boolean; setCreateActionOptions(options: AxiosRequestConfig): this; setUpdateActionOptions(options: AxiosRequestConfig): this; setSelectedRows(selectedRows: TDataItem[]): this; getSelectedRows(): TDataItem[]; getCount(): number; setPage(page: number): this; getPage(): number; setPageSize(pageSize: number): this; getPageSize(): number; getTotalPage(): number; getCell(rowIndex: number, columnKey: string): TDataItem | undefined; next(): Promise; previous(): Promise; goto(page: number): Promise; create(data: TDataItem, options?: AxiosRequestConfig & { refresh?: boolean; }): Promise; get(filterByTk: any): Promise; update(filterByTk: string | number, data: Partial, options?: AxiosRequestConfig): Promise; destroySelectedRows(): Promise; destroy(filterByTk: string | number | string[] | number[] | TDataItem | TDataItem[] | object, options?: AxiosRequestConfig): Promise; setItem(index: number, newDataItem: TDataItem): void; /** * 在同一个事件循环内多次调用 refresh 方法时,只有最后一次调用会生效。避免触发多次相同的接口请求。 * @returns */ refresh(): Promise; }