import { IndexedDb } from '../db'; import { CompanyEntity, Logger, QUERY_TYPE } from '../index'; import { QUERY_RESULT, Repository } from './index'; import { AuthenticationService } from "../service/authenticationService"; interface Args { account?: string; companyId?: string; } export declare class CompanyRepository extends Repository { private companyDb; private companyService; constructor(authenticationService: AuthenticationService, indexedDb: IndexedDb, baseURL: string, logger?: Logger); getAllCompanies(bearer: string, account?: string, mode?: QUERY_TYPE): Promise>; getCompany(bearer: string, account: string, companyId: string, mode?: QUERY_TYPE): Promise>; createCompany(bearer: string, account: string, company: CompanyEntity): Promise; cloneCompany(bearer: string, account: string, clonedCompanyId: string, company: CompanyEntity): Promise; updateCompany(bearer: string, account: string, companyId: string, company: CompanyEntity): Promise; deleteCompany(bearer: string, account: string, companyId: string): Promise; protected remoteList(bearer: string, args: Args): Promise; protected remoteGet(bearer: string, args: Args): Promise; protected remoteCreate(bearer: string, args: Args, item: CompanyEntity): Promise; protected remoteUpdate(bearer: string, args: Args, item: CompanyEntity): Promise; protected remoteDelete(bearer: string, args: Args): Promise; protected localList(args: Args): Promise; protected localGet(args: Args): Promise; protected localBulkSave(args: Args, companies: CompanyEntity[]): Promise; protected localDelete(args: Args): Promise; protected localBulkDelete(items: CompanyEntity[]): Promise; private checkNullable; } export {};