import { EntityMetadata, QueryRunner } from 'typeorm'; import { BaseRepository } from '../typeorm/base.repository'; import { MystiqueActionInterface } from './contracts/mystique.action.interface'; import { MystiqueActionsType } from './contracts/mystique.actions.type'; import { MystiqueFieldInterface } from './contracts/mystique.field.interface'; import { MystiqueSearchConfigInterface } from './contracts/mystique.search.config.interface'; export declare abstract class AbstractUpserter> { protected queryRunner: QueryRunner; protected repository: R; constructor(queryRunner: QueryRunner, repository: R); upsert(entity: E, data: any): Promise; protected getResource(): string; protected getService(): string; protected getDefaultActions(entity: E): MystiqueActionsType; protected mergeActionsToArray(...allActions: MystiqueActionsType[]): MystiqueActionsType; search(query: any, config?: MystiqueSearchConfigInterface): Promise<{ total: number; per_page: any; current_page: any; last_page: number; from: number; to: number; data: any[]; }>; searchForm(fields: MystiqueFieldInterface[]): Promise<{ actions: MystiqueActionsType; endpoint: string; fields: MystiqueFieldInterface[]; }>; findOneToUpsertForm(id: number | undefined): Promise; upsertForm(query: any, fields: MystiqueFieldInterface[]): Promise<{ actions: { [code: string]: MystiqueActionInterface; }; fields: MystiqueFieldInterface[]; }>; protected transformFields(fields: MystiqueFieldInterface[], entity: E, entityMetadata: EntityMetadata, columnObjects: any): Promise; }