import { SettingService } from '@hedhog/admin'; import { ContactService } from '@hedhog/contact'; import { MailService } from '@hedhog/mail'; import { PrismaService } from '@hedhog/prisma'; import { HttpService } from '@nestjs/axios'; import { OnModuleInit } from '@nestjs/common'; import { EventEmitter2, EventEmitterReadinessWatcher } from '@nestjs/event-emitter'; import { PaymentService } from '../payment/payment.service'; import { CreditCardDTO } from './dto/credit-card.dto'; import { PixDTO } from './dto/pix.dto'; import { ResetDTO } from './dto/reset.dto'; import { AbstractProvider } from './provider/abstract.provider'; export declare class CheckoutService implements OnModuleInit { private eventEmitter; private eventEmitterReadinessWatcher; private readonly httpService; private readonly prismaService; private readonly settingService; private readonly paymentService; private readonly contactService; private readonly mailService; private providerLoadedAt; private provider; private providerId; private setting; constructor(eventEmitter: EventEmitter2, eventEmitterReadinessWatcher: EventEmitterReadinessWatcher, httpService: HttpService, prismaService: PrismaService, settingService: SettingService, paymentService: PaymentService, contactService: ContactService, mailService: MailService); onModuleInit(): Promise; getProviderPayment(id: string): Promise; init({ items, slug, userId, coupon, }: { items: number[]; slug?: string; userId?: number; coupon?: string; }): Promise; private hasMethodDiscount; putMethod(paymentId: number, methodId: number): Promise; verifyPixDiscount(paymentId: number): Promise; private checkApplyMethodDiscount; private createPayment; private getPaymentItems; private updatePaymentItems; getPaymentSettings(): Promise<{ publicKey: string; creditEnabled: string; debitEnabled: string; pixEnabled: string; maxInstallments: string; pixDiscount: string; } | { publicKey?: undefined; creditEnabled?: undefined; debitEnabled?: undefined; pixEnabled?: undefined; maxInstallments?: undefined; pixDiscount?: undefined; }>; getProvider(): Promise; private getProviderData; createPaymentPix({ email, identificationNumber, identificationType, name, paymentSlug, phone, }: PixDTO): Promise; saveQRCode(paymentId: number, paymentPix: any): Promise; setPaymentValue(paymentId: number, name: string, value: string): Promise; private getFirstAndLastName; createPaymentCreditCard({ token, paymentMethodId, paymentMethodType, issuerId, installments, identificationNumber, paymentSlug, identificationType, name, email, phone, }: CreditCardDTO): Promise; paymentReset({ slug }: ResetDTO): Promise; saveCreditCard(paymentId: number, data: any): Promise; eventEmmitterPayment(statusId: number, paymentId: number): Promise; createSubscription(priceId: string, customerId: string): Promise; getNewSlug(): any; private getPersonId; private getPaymentBySlug; getPaymentDetails(paymentId: number): Promise; removeCoupon(paymentId: number, couponId: number): Promise; setCoupon(couponCode: string, paymentSlug: string): Promise; private getPaymentWithItems; private getCouponWithItems; private getItemsFromPaymentAndCoupon; private applyCouponDiscount; notification(gatewayId: number, data: any): Promise<{ success: boolean; error?: undefined; } | { success: boolean; error: any; }>; hasAccount(paymentId: number): Promise<{ hasAccount: boolean; code: string; }>; } //# sourceMappingURL=checkout.service.d.ts.map