declare type App = {
    nodeEnv: string;
    name: string;
    workingDirectory: string;
    port: number;
    panelBaseUrl: string;
    apiBaseUrl: string;
};
declare type Auth = {
    secret: string;
    expires: string;
    expiresLifetime: string;
};
declare type Mail = {
    port: number;
    host: string;
    user: string;
    password: string;
    defaultEmail: string;
    defaultName: string;
    ignoreTLS: boolean;
    secure: boolean;
    requireTLS: boolean;
};
declare type Sms = {
    kavenegarKey: string;
};
declare type Gateway = {
    bankMeliMode: string;
    bankMeliMerchantId: string;
    bankMeliTerminalId: string;
    bankMeliTerminalKey: string;
    zarinpalMode: string;
    zarinpalMerchantId: string;
    snappPayMode: string;
    snappPayClientId: string;
    snappPayClientSecret: string;
    snappPayUsername: string;
    snappPayPassword: string;
};
declare type ThirdParty = {
    alopeykMode: string;
    alopeykToken: string;
    mahexMode: string;
    mahexToken: string;
    samtHeaderUsername: string;
    samtHeaderPassword: string;
    samtBodyUsername: string;
    samtBodyPassword: string;
    samtSellerNationalCode: string;
    samtSellerCommercialCode: string;
    samtSellerPostalCode: string;
    veneshMode: string;
    veneshUsername: string;
    veneshPassword: string;
    veneshClientId: number;
    veneshClientSecret: string;
    ghabzinoMode: string;
    ghabzinoToken: string;
    sshafToken: string;
};
export declare class ConfigurationService {
    app: App;
    auth: Auth;
    mail: Mail;
    sms: Sms;
    gateway: Gateway;
    thirdParty: ThirdParty;
    constructor();
    getEnv(): Promise<void>;
}
export {};
