@exromany/lido-csm-sdk
Version:
[](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [](h
39 lines • 1.93 kB
TypeScript
import { AccountValue, CheckAllowanceResult, TransactionResult } from '@lidofinance/lido-ethereum-sdk';
import { Address } from 'viem';
import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module.js';
import { PermitSignatureShort } from '../common/index.js';
import { SignPermitOrApproveProps } from './internal-types.js';
import { AllowanceProps, PerformOptionsNoSpend, PerformOptionsSpend } from './types.js';
export declare class TxSDK extends CsmSDKModule {
protected get spender(): Address;
private getTokenContract;
isAbstractAccount(account: Address): Promise<boolean>;
isMultisig(_account?: AccountValue): Promise<boolean>;
private checkContractVersion;
private internalTransaction;
private internalCall;
perform<TDecodedResult = undefined>(props: PerformOptionsSpend<TDecodedResult>): Promise<TransactionResult<TDecodedResult>>;
perform<TDecodedResult = undefined>(props: PerformOptionsNoSpend<TDecodedResult>): Promise<TransactionResult<TDecodedResult>>;
private performCall;
private performTransaction;
private prepareCall;
private callToInternalTransaction;
private callToGetGasLimit;
private callToSendTransaction;
private getPermit;
private getApproveCallIfNeeded;
allowance({ account: accountProp, token, }: AllowanceProps): Promise<bigint>;
checkAllowance(props: SignPermitOrApproveProps): Promise<CheckAllowanceResult>;
signPermit(props: SignPermitOrApproveProps): Promise<import("@lidofinance/lido-ethereum-sdk").PermitSignature>;
approve(props: SignPermitOrApproveProps): Promise<TransactionResult>;
private getApproveCall;
signPermitOrApprove(props: SignPermitOrApproveProps): Promise<{
permit: PermitSignatureShort;
hash?: undefined;
} | {
permit: PermitSignatureShort;
hash: `0x${string}`;
}>;
private wrapApproveCallback;
}
//# sourceMappingURL=tx-sdk.d.ts.map