n8n
Version:
n8n Workflow Automation Tool
33 lines (32 loc) • 2.49 kB
TypeScript
import { DataTableFilter, ListDataTableContentQueryDto } from '@n8n/api-types';
import { DataSource, EntityManager } from '@n8n/typeorm';
import { DataTableColumnJsType, DataTableRows, DataTableRowReturn, DataTableRowsReturn, DataTableInsertRowsReturnType, DataTableInsertRowsResult, DataTableRowReturnWithState } from 'n8n-workflow';
import { DataTableColumn } from './data-table-column.entity';
import { DataTableUserTableName } from './data-table.types';
export declare class DataTableRowsRepository {
private dataSource;
constructor(dataSource: DataSource);
insertRowsBulk(table: DataTableUserTableName, rows: DataTableRows, columns: DataTableColumn[], trx?: EntityManager): Promise<{
readonly success: true;
readonly insertedRows: number;
}>;
insertRows<T extends DataTableInsertRowsReturnType>(dataTableId: string, rows: DataTableRows, columns: DataTableColumn[], returnType: T, trx?: EntityManager): Promise<DataTableInsertRowsResult<T>>;
updateRows<T extends boolean | undefined>(dataTableId: string, data: Record<string, DataTableColumnJsType | null>, filter: DataTableFilter, columns: DataTableColumn[], returnData?: T, trx?: EntityManager): Promise<T extends true ? DataTableRowReturn[] : true>;
dryRunUpdateRows(dataTableId: string, data: Record<string, DataTableColumnJsType | null>, filter: DataTableFilter, columns: DataTableColumn[], trx?: EntityManager): Promise<DataTableRowReturnWithState[]>;
dryRunUpsertRow(dataTableId: string, data: Record<string, DataTableColumnJsType | null>, filter: DataTableFilter, columns: DataTableColumn[], trx?: EntityManager): Promise<DataTableRowReturnWithState[]>;
deleteRows(dataTableId: string, columns: DataTableColumn[], filter: DataTableFilter | undefined, returnData?: boolean, dryRun?: boolean, trx?: EntityManager): Promise<true | DataTableRowReturn[] | DataTableRowReturnWithState[]>;
private getAffectedRowsForUpdate;
private prepareUpdateData;
private toDryRunRows;
getManyAndCount(dataTableId: string, dto: ListDataTableContentQueryDto, columns: DataTableColumn[], trx?: EntityManager): Promise<{
count: number;
data: DataTableRowsReturn;
}>;
getManyByIds(dataTableId: string, ids: number[], columns: DataTableColumn[], trx?: EntityManager): Promise<DataTableRowsReturn>;
private getManyQuery;
private applySearch;
private applyFilters;
private applySorting;
private applySortingByField;
private applyPagination;
}