import { ConnectionConfig } from 'mysql'; export declare type BaseColumnType = 'string' | 'number' | 'Date'; export declare type SchemaInfo = { name: string; tables: TableInfo[]; }; export declare type TableInfo = { TABLE_NAME: string; AUTO_INCREMENT: number | null; UPDATE_TIME: string; ENGINE: string; columns: ColumnInfo[]; keys: KeyInfo[]; }; export declare type ColumnInfo = { COLUMN_NAME: string; COLUMN_TYPE: string; IS_NULLABLE: 'YES' | 'NO'; COLUMN_KEY: string; EXTRA: string; baseType: BaseColumnType; referencedTable?: string | null; }; export declare type KeyInfo = { CONSTRAINT_NAME: string; COLUMN_NAME: string; REFERENCED_TABLE_NAME: string | null; REFERENCED_COLUMN_NAME: string | null; }; export declare function GrabTablesInfo(dbConfig: ConnectionConfig, schema: string): Promise; export declare function GrabColumnsInfo(dbConfig: ConnectionConfig, table: any, schema: string): Promise; export declare function GrabKeysInfo(dbConfig: ConnectionConfig, table: TableInfo, schema: string): Promise; export declare const numericTypes: string[]; export declare const dateTypes: string[]; export declare function ParseColumnType(columnType: string): BaseColumnType;