import { FieldsValidator, UnknownFields } from "./fields"; import { ActionPoint, ActionPointOptions } from "./action-point"; import { ValidationContext } from "./validator"; import { RestMethod, UnknownActionPayload } from "./endpoint"; import { AirtableRecord } from "./record"; import { SelectQuery, SelectQueryParams } from "./select-query"; import { RecordData } from "./raw-types"; import { DeletedRecord } from "./raw-types"; export declare type TableDataSource = ActionPoint; export interface TableActionPoint { runTableAction

(method: RestMethod, { path, ...options }: ActionPointOptions): Promise; } export declare class Table implements TableActionPoint, FieldsValidator { readonly base: TableDataSource; readonly name: string; validator?: FieldsValidator; constructor(base: TableDataSource, tableName: string, validator?: FieldsValidator); createValidation(reference?: string): ValidationContext; private subPath; runTableAction

(method: RestMethod, { path, ...options }: ActionPointOptions): Promise; find(recordId: string): Promise>; findOrNull(recordId: string): Promise | null>; select(query?: SelectQueryParams): SelectQuery; private createSingleRecord; private createMultipleRecords; create(data: Fields): Promise>; create(data: Fields[]): Promise[]>; private updateSingleRecord; private updateMultipleRecords; private replaceSingleRecord; private replaceMultipleRecords; update(data: RecordData>): Promise>; update(data: RecordData>[]): Promise[]>; replace(data: RecordData): Promise>; replace(data: RecordData[]): Promise[]>; private destroySingleRecord; private destroyMultipleRecords; destroy(id: string): Promise; destroy(ids: string[]): Promise; }