import { IElavonPaymentProvider } from "../../base/contracts/GatewayProviders/IElavonPaymentProvider";
import { IPaymentProvider } from "../../base/contracts/IPaymentProvider";
import { BasePaymentProvider } from "../../base/entity/BasePaymentProvider";
export declare class ElavonPayment extends BasePaymentProvider implements IPaymentProvider, IElavonPaymentProvider {
    /**
     * Requests a token from the Elavon payment provider.
     *
     * This method initializes the SDK and attempts to create a session
     * with the provided data. If successful, it returns the result of the
     * session creation. If the SDK initialization fails, it returns null.
     * In case of an error during the process, it returns an object containing
     * the error details.
     * ______
     * ELAVON
     * ‾‾‾‾‾‾
     * API Reference - https://developer.elavon.com/products/hosted-payment-page/v1/api-reference#tag/Request-Session-Token/operation/session-token
     *
     * @param data - The data required for creating a session with Elavon.
     * @returns A promise that resolves to the result of the session creation
     *          or an object with error details if an error occurs.
     */
    requestToken(data: any): Promise<any>;
    initPaymentIntent(data: any): void;
    requestPayment(data: any): void;
    getOrderDetails(data: any): void;
}
