import { PaylineMode } from "../payline-mode.js";
import { PaylineCurrency } from "../payline-currency.js";
import { PaylineDeliveryMode } from "../payline-delivery-mode.js";
import { PaylineBaseRequest } from "./payline-base-request.js";
import { PaylineOrder } from "../payline-order.js";
import { PaylineBuyer } from "../payline-buyer.js";
import { PaylineOwner } from "../payline-owner.js";
import { PaylineThreeDSInfo } from "../payline-three-ds-info.js";
import { PaylineAction } from "../payline-action.js";
import { PaylinePayment } from "../payline-payment.js";
import { PaylineOrderDetail } from "../payline-order-detail.js";
declare class PaylineDoWebPaymentRequest extends PaylineBaseRequest {
    payment: PaylinePayment;
    returnURL: string;
    cancelURL: string;
    order: PaylineOrder;
    notificationURL?: string;
    selectedContractList?: {
        selectedContract: string;
    }[];
    secondSelectedContractList?: {
        selectedContract: string;
    }[];
    privateDataList?: {
        [key: string]: string;
    };
    languageCode?: string;
    customPaymentPageCode?: string;
    buyer: PaylineBuyer;
    owner?: PaylineOwner;
    securityMode?: string;
    reccuring?: any;
    customPaymentTemplateURL: string;
    contractNumberWalletList?: any;
    merchantName?: string;
    subMerchant?: {};
    miscData?: string;
    asynchronousRetryTimeout?: string;
    threeDSInfo?: PaylineThreeDSInfo;
    merchantScore?: string;
    constructor(orderRef: string);
    changeContractNumber(contractNumber: string, force?: boolean): this;
    setSelectedContracts(contractsNumber: string[]): this;
    setSecondSelectedContracts(contractsNumber: string[]): this;
    setCallbackUrls(returnURL: string, cancelURL: string, notificationURL?: string): this;
    setAmount(amount: number, currency: PaylineCurrency): this;
    setClientDetails(email: string, firstName: string, lastName: string): this;
    setWalletId(walletId: string): this;
    setPaymentDetails(action: PaylineAction, mode: PaylineMode, differedActionDate?: string): this;
    setOrderDetails(deliveryMode: PaylineDeliveryMode, country?: string, details?: PaylineOrderDetail[]): this;
    setCustomPageCode(code: string): this;
}
export { PaylineDoWebPaymentRequest };
