import type { Booking, Payment, Prisma, PaymentOption } from '../../../prisma-client';
import type { IAbstractPaymentService } from "@calcom/types/PaymentService";
export declare class PaymentService implements IAbstractPaymentService {
    create(payment: Pick<Prisma.PaymentUncheckedCreateInput, "amount" | "currency">, bookingId: Booking["id"]): Promise<{
        success: boolean;
        data: Prisma.JsonValue;
        id: number;
        currency: string;
        paymentOption: import('../../../prisma-client').$Enums.PaymentOption | null;
        bookingId: number;
        uid: string;
        appId: string | null;
        externalId: string;
        refunded: boolean;
        amount: number;
        fee: number;
    }>;
    update(): Promise<Payment>;
    refund(): Promise<Payment>;
    collectCard(payment: Pick<Prisma.PaymentUncheckedCreateInput, "amount" | "currency">, bookingId: number, _bookerEmail: string, paymentOption: PaymentOption): Promise<Payment>;
    chargeCard(): Promise<Payment>;
    getPaymentPaidStatus(): Promise<string>;
    getPaymentDetails(): Promise<Payment>;
    afterPayment(): Promise<void>;
    deletePayment(): Promise<boolean>;
    isSetupAlready(): boolean;
}
//# sourceMappingURL=PaymentService.d.ts.map