import { IDBType } from './IDBType'; import { JS_DATA_TYPES } from '@allgemein/schema-api'; import { ICollection } from './ICollection'; import { IStorageRef } from './IStorageRef'; import { TypeOrmConnectionWrapper } from './framework/typeorm/TypeOrmConnectionWrapper'; export declare abstract class AbstractSchemaHandler { static types: string[]; static operations: { [type: string]: { [op: string]: (...args: any[]) => string; }; }; static values: { [type: string]: { [op: string]: (...args: any[]) => string; }; }; static typeMap: { [type: string]: { [type: string]: string; }; }; readonly type: string; readonly storageRef: IStorageRef; constructor(ref?: IStorageRef); /** * Returns false if db type doesn't supports json type for columns */ supportsJson(): boolean; /** * Return if null first or null last extra support during sort */ supportsSortNull(): boolean; prepare(): void; initOnceByType(): void; abstract getCollectionNames(): Promise; getConnection(): Promise; getCollection(name: string): Promise; escape(name: string, quote?: boolean): string; getCollections(names: string[]): Promise; translateToJsType(dbType: string): JS_DATA_TYPES; getTypeMap(): { [type: string]: string; } | {}; translateToStorageType(jsType: string | Function, options?: { length?: number; [k: string]: any; }): IDBType; resolveTypeToStorage(sourceType: string, opts?: { variant?: string; length?: number; [k: string]: any; }): string; registerOperationHandle(name: string, op: (...args: any[]) => string): void; registerValueHandle(name: string, op: (...args: any[]) => string): void; getOperationHandle(name: string): (...args: any[]) => string; getValueHandle(name: string): (...args: any[]) => string; }