import { Types } from 'mongoose';
import { ModelsService } from 'src/models/models.service';
import { CommonService } from 'src/common/common.service';
import { RazorpayService } from 'src/razorpay/razorpay.service';
import { StripeService } from 'src/stripe/stripe.service';
import { WalletService as CommonWalletService, WalletTransactionInput } from 'src/common/services/wallet.service';
import { AddBalanceDto, WithdrawDto } from './dto/wallet.dto';
import { TranslationService } from 'src/common/services/translation.service';
export declare class WalletService {
    private readonly models;
    private readonly common;
    private readonly razorpay;
    private readonly stripe;
    private readonly commonWalletService;
    private readonly translationService;
    constructor(models: ModelsService, common: CommonService, razorpay: RazorpayService, stripe: StripeService, commonWalletService: CommonWalletService, translationService: TranslationService);
    addBalance(req: any, addBalanceDto: AddBalanceDto): Promise<{
        stripe: any;
        razorpay: any;
    }>;
    withdraw(req: any, withdrawDto: WithdrawDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    debitWallet(input: WalletTransactionInput): Promise<{
        success: boolean;
        transaction: import("mongoose").Document<unknown, {}, import("./schema/wallet.transaction.schema").WalletTransaction, {}> & import("./schema/wallet.transaction.schema").WalletTransaction & {
            _id: Types.ObjectId;
        } & {
            __v: number;
        };
        new_balance: number;
        message: string;
    } | undefined>;
}
