import * as mssql from "mssql";
import { IConnectDatabase, IDatabaseMethods } from "./database.interface";
export interface IDataLocalizedMessages {
    localizedMessageName: string;
    cultureName: string;
    localizedMessageText: string;
}
export declare const connectionToDatabase: IConnectDatabase;
/** SQL Queries*/
/**
 * Query to get i18n localized messages
 */
export declare const SQL_Geti18nLocalizedMessages: string;
/**
 * Query to get resources localized messages
 */
export declare const SQL_GetResourcesLocalizedMessages: string;
/**
 * Query to delete localized messages using their name
 */
export declare const SQL_DeleteLocalizedMessage: string;
export declare class DatabaseManagement implements IDatabaseMethods {
    private _connectionPoll;
    /**
     * Using the constant "connection_database", this method returns a connection to specified database
     * If occurs an error, a message is displayed in console and a new attempt to connect is made
     * @param connectionToDatabase (constant with information to access database)
     */
    getConnection(connectionToDatabase: IConnectDatabase): Promise<mssql.ConnectionPool>;
    /**
     * Get all localized messages in database and
     * returns a array of type IData with all
     * @param connectionToDatabase (constant with information to access database)
     * @param sqlCommand (query to get all localized messages in database)
     * @param packages (packages in config.packages.i18n)
     */
    getLocalizedMessages(connectionToDatabase: IConnectDatabase, sqlCommand: string, packages: string[]): Promise<IDataLocalizedMessages[]>;
    /**
     * Delete localized messages from database using their name
     * @param connectionToDatabase (constant with information to access database)
     * @param sqlCommand (query to delete localized messages using name)
     * @param LocalizedMessages (array with all localized messages treated)
     */
    deleteLocalizedMessages(connectionToDatabase: IConnectDatabase, sqlCommand: string, localizedMessages: IDataLocalizedMessages[]): Promise<void>;
}
