import type { IFeatureModule } from '../../types/IFeatureModule'; import { Wallet } from '../../core/Wallet'; import type { Logger } from '../../utils/logger'; import type { GasFreeConfig } from './types/GasFreeConfig'; import type { GasFreeTransferRequest, GasFreeTransferResult } from './types/GasFreeRequest'; import type { FeeQuote, VerificationResult, PSBTBuildResult, PSBTSubmitResult, BroadcastResult, TransferState } from './types'; import { Feature } from '../../types/Feature'; export declare class GasFreeModule implements IFeatureModule { readonly name = Feature.GAS_FREE; readonly version = "1.0.0"; readonly config: GasFreeConfig; private wallet?; private logger?; private serviceClient?; private consignmentReader?; private ready; private currentState; constructor(config: GasFreeConfig); initialize(wallet?: Wallet, logger?: Logger): Promise; cleanup(): Promise; getStatus(): { enabled: boolean; ready: boolean; [key: string]: unknown; }; isReady(): boolean; requestFeeQuote(request: GasFreeTransferRequest): Promise; confirmTransfer(request: GasFreeTransferRequest, feeQuote: FeeQuote): Promise; getState(): TransferState; estimateFee(transferAmount: number): { feeInAsset: number; feeUsd: number; effectivePercentage: number; }; dispose(): Promise; private generateFeeQuote; buildPSBT(request: GasFreeTransferRequest, feeQuote: FeeQuote): Promise; submitPSBT(quoteId: string, psbtResult: PSBTBuildResult, assetId: string): Promise; broadcastTransfer(serviceSignedPsbt: string): Promise; verifyTransfer(quoteId: string, txid: string, signedPsbtBase64: string): Promise; private validateConfig; } export declare function createGasFreeModule(config: GasFreeConfig): GasFreeModule; //# sourceMappingURL=GasFreeModule.d.ts.map