import { Signer, Wallet } from 'ethers'; import { IAddress } from '../../types'; export type IContractWriteOptions = { target: IAddress; wallet: IAddress; amount?: string | bigint | number; wait?: boolean; depositAsset?: IAddress; chainId?: number; poolName?: string; isInstantRedeem?: boolean; isDepositWithPermit?: boolean; }; export type INativeDepositOptions = { wrapperAddress: IAddress; receiver?: IAddress; amount: string | bigint | number; wait?: boolean; }; export declare function vaultApprove(signer: Signer | Wallet, options: IContractWriteOptions): Promise; export declare function vaultDeposit(signer: Signer | Wallet, options: IContractWriteOptions): Promise; export declare function vaultRequestRedeem(signer: Signer | Wallet, options: IContractWriteOptions): Promise; export declare function vaultRedeem(signer: Signer | Wallet, options: IContractWriteOptions & { year: string; month: string; day: string; receiverIndex: string; }): Promise; export declare function depositNative(signer: Signer | Wallet, options: INativeDepositOptions): Promise; export type IRwaRedeemOptions = { target: IAddress; wallet: IAddress; asset: IAddress; amount: string | bigint | number; minOut: string | bigint | number; decimals: number; outputDecimals: number; wait?: boolean; }; export declare function rwaRedeemAsset(signer: Signer | Wallet, options: IRwaRedeemOptions): Promise;