import { AxiosResponse } from 'axios';
import CommandBase from '../command.base.js';
export default class Sql extends CommandBase<typeof Sql> {
    static description: string;
    static usage: string;
    static examples: string[];
    static args: {
        type: import("@oclif/core/lib/interfaces/parser.js").Arg<string, Record<string, unknown>>;
        module: import("@oclif/core/lib/interfaces/parser.js").Arg<string | undefined, Record<string, unknown>>;
    };
    static flags: {
        version: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        layer: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        offline: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
        description: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        major: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
        'table-schema': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        'table-name': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        'column-name': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        'column-type': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
        dwh: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
    };
    private readonly _moduleTypes;
    private _dbmsTypes;
    /**
     * Get unique Script ID zip by specified version
     * @param {string} version The version of Identity Server
     * @returns {Promise<AxiosResponse<any, any>>}
     */
    getScriptId(version: string): Promise<AxiosResponse<any, any>>;
    /**
     * Get unique scriptID by specified version
     * @param {string} version Specified version
     * @param {string} description Description
     * @returns {Promise<string>} Promise to scriptID
     */
    getOfflineScriptId(version: string, description: string | undefined): Promise<string>;
    handleLayer(scriptDbmsFolder: string, scriptLayer: string, scriptType: string, dbmsFormat: string): Promise<string>;
    sqlExtendScriptGeneration(tableSchema: string | undefined, tableName: string | undefined, columnName: string | undefined, columnType: string | undefined): Promise<string>;
    oradcExtendScriptGeneration(tableSchema: string | undefined, tableName: string | undefined, columnName: string | undefined, columnType: string | undefined): Promise<string>;
    postgresExtendScriptGeneration(tableSchema: string | undefined, tableName: string | undefined, columnName: string | undefined, columnType: string | undefined): Promise<string>;
    checkExtendParameters(): Promise<string[]>;
    run(): Promise<void>;
}
