import { TsTxWithdrawNonSignatureRequest, TsTxAuctionLendNonSignatureRequest, TsTxAuctionBorrowNonSignatureRequest, TsTxCancelOrderNonSignatureRequest, TsTxSecondLimitOrderNonSignatureRequest, TsTxSecondMarketOrderNonSignatureRequest, TsTxNonSignatureRequest, TsTxRedeemNonSignatureRequest, TsTxTransferNonSignatureRequest } from '../ts-types/ts-req-types'; import { TypedDataSigner } from '@ethersproject/abstract-signer'; /** * Defined all functions that sign the typed data for various types of transactions in the Term Structure protocol. * The functions are used to sign the typed data in the transaction request. * Using EIP-712, the typed data is hashed and signed by the user's wallet. * The signature is then used to verify the transaction request. */ /** * Sign typed data when user login, this is used for authentication * @method signAuthenticationTypedData * @param chainId * @param verifyingContract * @param signer * @returns ecdsa signature for Term Structure EdDSA seed */ export declare const signAuthenticationTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner) => Promise; /** * Sign typed data for transfer request * @method signTransferTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signTransferTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxTransferNonSignatureRequest) => Promise; /** * Sign typed data for withdraw request * @method signWithdrawTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signWithdrawTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxWithdrawNonSignatureRequest) => Promise; /** * Sign typed data for auction lend request * @method signAuctionLendTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signAuctionLendTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxAuctionLendNonSignatureRequest) => Promise; /** * Sign typed data for auction borrow request * @method signAuctionBorrowTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signAuctionBorrowTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxAuctionBorrowNonSignatureRequest) => Promise; /** * Sign typed data for cancel order request * @method signCancelOrderTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signCancelOrderTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxCancelOrderNonSignatureRequest) => Promise; /** * Sign typed data for secondary market limit order request * @method signSecondLimitOrderTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signSecondLimitOrderTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxSecondLimitOrderNonSignatureRequest) => Promise; /** * Sign typed data for secondary market order request * @method signSecondMarketOrderTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signSecondMarketOrderTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxSecondMarketOrderNonSignatureRequest) => Promise; /** * Sign typed data for redeem request * @method signRedeemTypedData * @param chainId * @param verifyingContract * @param signer * @param req * @returns */ export declare const signRedeemTypedData: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxRedeemNonSignatureRequest) => Promise; /** * Sign typed data dispatcher for different request type except auth request * @method signTypedDataDispatcher * @param chainId * @param verifyingContract * @param signer * @param req * @returns ecdsa signature */ export declare const signTypedDataDispatcher: (chainId: number, verifyingContract: string, signer: TypedDataSigner, req: TsTxNonSignatureRequest) => Promise;