import { ContractTarget } from "../config/global";
export declare enum ParabolErrorCode {
    INITIALIZATION_FAILED = "INITIALIZATION_FAILED",
    WALLET_CLIENT_NOT_SET = "WALLET_CLIENT_NOT_SET",
    WALLET_OR_PUBLIC_CLIENT_NOT_SET = "WALLET_OR_PUBLIC_CLIENT_NOT_SET",
    INVALID_CHAIN_ID = "INVALID_CHAIN_ID",
    CHAIN_DETECTION_FAILED = "CHAIN_DETECTION_FAILED",
    INVALID_CONFIGURATION = "INVALID_CONFIGURATION",
    INVALID_ARGUMENTS = "INVALID_ARGUMENTS",
    INVALID_AMOUNT = "INVALID_AMOUNT",
    INVALID_ADDRESS = "INVALID_ADDRESS",
    INVALID_DURATION = "INVALID_DURATION",
    INVALID_TOKEN_ID = "INVALID_TOKEN_ID",
    INVALID_DEADLINE = "INVALID_DEADLINE",
    INVALID_CONTRACT_ADDRESS = "INVALID_CONTRACT_ADDRESS",
    INVALID_CONTRACT_ABI = "INVALID_CONTRACT_ABI",
    INVALID_DATA_STRUCTURE = "INVALID_DATA_STRUCTURE",
    INVALID_API_RESPONSE_FORMAT = "INVALID_API_RESPONSE_FORMAT",
    FETCH_NOTES_FAILED = "FETCH_NOTES_FAILED",
    NOTE_DATA_UNAVAILABLE = "NOTE_DATA_UNAVAILABLE",
    MIN_LEND_LIMIT_RETRIEVAL_FAILED = "MIN_LEND_LIMIT_RETRIEVAL_FAILED",
    LEND_INFO_RETRIEVAL_FAILED = "LEND_INFO_RETRIEVAL_FAILED",
    BALANCE_RETRIEVAL_FAILED = "BALANCE_RETRIEVAL_FAILED",
    NONCE_RETRIEVAL_FAILED = "NONCE_RETRIEVAL_FAILED",
    ALLOWANCE_CHECK_FAILED = "ALLOWANCE_CHECK_FAILED",
    SIMULATION_FAILED = "SIMULATION_FAILED",
    WRITE_OPERATION_FAILED = "WRITE_OPERATION_FAILED",
    READ_OPERATION_FAILED = "READ_OPERATION_FAILED",
    SIGNATURE_CREATION_FAILED = "SIGNATURE_CREATION_FAILED",
    INSUFFICIENT_LEND_AMOUNT = "INSUFFICIENT_LEND_AMOUNT",
    NOT_APPROVED_TO_CLAIM_NOTE_POSITION = "NOT_APPROVED_TO_CLAIM_NOTE_POSITION",
    HTTP_ERROR = "HTTP_ERROR",
    EXECUTE_QUERY_FAILED = "EXECUTE_QUERY_FAILED",
    PARABOL_PROXY_FAILED = "PARABOL_PROXY_FAILED",
    CALLDATA_GENERATION_FAILED = "CALLDATA_GENERATION_FAILED",
    INVALID_TRANSACTION_TYPE = "INVALID_TRANSACTION_TYPE"
}
export declare class ParabolSDKError extends Error {
    code: ParabolErrorCode;
    cause?: ParabolErrorCode | Error;
    constructor(code: ParabolErrorCode, message: string, cause?: ParabolErrorCode | Error);
    static initializationFailed(message: string): ParabolSDKError;
    static calldataGenerationFailed(cause: ParabolErrorCode): ParabolSDKError;
    static invalidArguments(message: string): ParabolSDKError;
    static writeOperationFailed(transactionType: string, message: string): ParabolSDKError;
    static readOperationFailed(transactionType: string, message: string): ParabolSDKError;
    static invalidTransactionType(transactionType: string): ParabolSDKError;
    static notApprovedToClaimNotePosition(): ParabolSDKError;
    static invalidConfiguration(message: string): ParabolSDKError;
    static fetchNotesFailed(cause: ParabolErrorCode): ParabolSDKError;
    static executeQueryFailed(cause: ParabolErrorCode): ParabolSDKError;
    static parabolProxyFailed(cause: ParabolErrorCode): ParabolSDKError;
    static walletClientNotSet(): ParabolSDKError;
    static walletOrPublicClientNotSet(): ParabolSDKError;
    static chainDetectionFailed(): ParabolSDKError;
    static invalidAmount(amount: string): ParabolSDKError;
    static invalidAddress(address?: string): ParabolSDKError;
    static invalidDataStructure(dataStructure: string): ParabolSDKError;
    static minLendLimitRetrievalFailed(message?: string, cause?: ParabolErrorCode): ParabolSDKError;
    static lendInfoRetrievalFailed(message: string, cause: ParabolErrorCode): ParabolSDKError;
    static balanceRetrievalFailed(message: string, cause?: ParabolErrorCode): ParabolSDKError;
    static nonceRetrievalFailed(): ParabolSDKError;
    static allowanceCheckFailed(): ParabolSDKError;
    static simulationFailed(message: string, cause?: ParabolErrorCode): ParabolSDKError;
    static insufficientLendAmount(amount: bigint, minLendLimit: bigint): ParabolSDKError;
    static invalidChainId(chainId?: number): ParabolSDKError;
    static invalidDuration(duration: number): ParabolSDKError;
    static invalidTokenId(tokenId?: bigint): ParabolSDKError;
    static invalidPermitDeadline(deadline: bigint): ParabolSDKError;
    static invalidAPIResponseFormat(): ParabolSDKError;
    static invalidContractAbi(target: ContractTarget): ParabolSDKError;
    static noteDataUnavailable(message?: string): ParabolSDKError;
    static signatureCreationFailed(): ParabolSDKError;
    static HTTPError(): ParabolSDKError;
}
//# sourceMappingURL=ParabolSDKError.d.ts.map