import { DatabaseHandle, DatabaseInfo, DatabaseModification, EngineDriver, SqlDialect } from 'dbgate-types'; import { type Logger } from 'pinomin'; export declare class DatabaseAnalyser { dbhan: DatabaseHandle; driver: EngineDriver; structure: DatabaseInfo; modifications: DatabaseModification[]; singleObjectFilter: any; singleObjectId: string; dialect: SqlDialect; logger: Logger; startedTm: number; analyseIdentifier: string; constructor(dbhan: DatabaseHandle, driver: EngineDriver, version: any); _runAnalysis(): Promise; _getFastSnapshot(): Promise; _computeSingleObjectId(): Promise; addEngineField(db: DatabaseInfo): DatabaseInfo; getLogDbInfo(): { analyserTime: number; analyseIdentifier: string; database?: string; engine: string; conid?: string; }; fullAnalysis(): Promise; singleObjectAnalysis(name: any, typeField: any): Promise; incrementalAnalysis(structure: any): Promise; mergeAnalyseResult(newlyAnalysed: any): any; getRequestedObjectPureNames(objectTypeField: any, allPureNames: any): any; getDefaultSchemaNameCondition(): string; createQuery(template: any, typeFields: any, replacements?: {}): any; processQueryReplacements(query: any, replacements: any): any; createQueryCore(template: any, typeFields: any): any; getDeletedObjectsForField(snapshot: any, objectTypeField: any): any; getDeletedObjects(snapshot: any): any[]; feedback(obj: any): void; getModifications(): Promise; analyserQuery(template: any, typeFields: any, replacements?: {}): Promise; static createEmptyStructure(): DatabaseInfo; static byTableFilter(table: any): (x: any) => boolean; static extractPrimaryKeys(table: any, pkColumns: any): { constraintType: string; columns: any; pureName: any; schemaName: any; constraintName: any; }; static extractForeignKeys(table: any, fkColumns: any): { columns: Pick[]; constraintName: string; constraintType: string; }[]; }