import { AddMerchantParams, AlterPeriodicPaymentAmountParams, AlterPeriodicPaymentAmountResponse, AlterPeriodicPaymentStatusParams, AlterPeriodicPaymentStatusResponse, CancelCreditCardParams, ChargeMerchantResult, CreatePeriodicPaymentHTMLParams, CreatePeriodicPaymentResponse, CreditCardPaymentParams, GetPaymentFormHTMLParams, ModifyMerchantParams, PeriodicPaymentResponse, QueryTradeInfoParams, RefundCreditCardParams, RefundEWalletParams, TradeInfo } from ".";
export declare class NewebpayClient {
    partnerId: string | null;
    merchantId: string;
    hashKey: string;
    hashIV: string;
    apiEndpoint: string;
    env: "sandbox" | "production";
    proxySecret?: string;
    constructor(params: {
        partnerId?: string;
        merchantId: string;
        hashKey: string;
        hashIV: string;
        env: "sandbox" | "production";
        proxyEndpoint?: string;
        proxySecret?: string;
    });
    parseTradeInfo(tradeInfo: string): TradeInfo;
    decryptAESString(encrypted: string): string;
    getPaymentFormHTML(params: GetPaymentFormHTMLParams): string;
    queryTradeInfo(params: QueryTradeInfoParams): Promise<{
        Status: string;
        Message: string;
        Result: {
            [key: string]: any;
        };
    }>;
    createPeriodicPaymentHTML(params: CreatePeriodicPaymentHTMLParams): string;
    alterPeriodicPaymentStatus(params: AlterPeriodicPaymentStatusParams): Promise<AlterPeriodicPaymentStatusResponse>;
    alterPeriodicPaymentAmount(params: AlterPeriodicPaymentAmountParams): Promise<AlterPeriodicPaymentAmountResponse>;
    refundCreditCard(params: RefundCreditCardParams): Promise<{
        Status: string;
        Message: string;
        Result: {
            [key: string]: any;
        };
    }>;
    cancelCreditCard(params: CancelCreditCardParams): Promise<{
        Status: string;
        Message: string;
        Result: {
            [key: string]: any;
        };
    }>;
    refundEWallet(params: RefundEWalletParams): Promise<{
        UID: string;
        Version: string;
        Status: string;
        Message: string;
        Result: {
            [key: string]: any;
        };
    }>;
    addMerchant(params: AddMerchantParams): Promise<{
        status: string;
        message: string;
        result: {
            [key: string]: any;
        };
    }>;
    modifyMerchant(params: ModifyMerchantParams): Promise<{
        status: string;
        message: string;
        result: {
            [key: string]: any;
        };
    }>;
    chargeMerchant(params: AddMerchantParams): Promise<ChargeMerchantResult>;
    requestCreditCardPayment: (params: CreditCardPaymentParams) => Promise<TradeInfo>;
    buildTradeInfo(params: {
        [key: string]: any;
    }): string;
    encryptAESString(plainText: string): string;
    buildTradeSha(tradeInfo: string): string;
    buildCheckCode(params: {
        [key: string]: any;
    }): string;
    buildCheckValue(params: {
        [key: string]: any;
    }): string;
    sendApiRequest: (params: {
        apiPath: string;
        data: any;
    }) => Promise<import("axios").AxiosResponse<any, any>>;
    parseCreatePeriodicPaymentResponse(rawResponse: string): CreatePeriodicPaymentResponse;
    parsePeriodicPaymentResponse(rawResponse: string): PeriodicPaymentResponse;
    private getTimeStamp;
}
export default NewebpayClient;
