import { BlockHash } from '@dedot/codecs'; import { DedotError } from '@dedot/utils'; export declare enum RetryStrategy { NOW = "NOW",// Retry immediately QUEUED = "QUEUED" } export declare class ChainHeadError extends DedotError { name: string; retryStrategy?: RetryStrategy | undefined; } /** * Operation Inaccessible Error * * Ref: https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_v1_follow.html#operationinaccessible */ export declare class ChainHeadOperationInaccessibleError extends ChainHeadError { name: string; retryStrategy: RetryStrategy; } /** * Stop Error * * Ref: https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_v1_follow.html#stop */ export declare class ChainHeadStopError extends ChainHeadError { name: string; retryStrategy: RetryStrategy; } /** * Operation Error * Ref: https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_v1_follow.html#operationerror */ export declare class ChainHeadOperationError extends ChainHeadError { name: string; } /** * Limit Reached Error * Ref: https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_v1_storage.html#limitreached */ export declare class ChainHeadLimitReachedError extends ChainHeadError { name: string; retryStrategy: RetryStrategy; } /** * Invalid Runtime Error * Ref: https://paritytech.github.io/json-rpc-interface-spec/api/chainHead_v1_storage.html#limitreached */ export declare class ChainHeadInvalidRuntimeError extends ChainHeadError { name: string; } export declare class ChainHeadBlockNotPinnedError extends ChainHeadError { name: string; hash: BlockHash; constructor(message: string, hash: BlockHash | string); } export declare class ChainHeadBlockPrunedError extends ChainHeadError { name: string; }