postchain-client
Version:
Client library for accessing a Postchain node through REST.
30 lines (29 loc) • 1.57 kB
TypeScript
import { HandleRequestInputProps, ResponseObject, RetryRequestProps } from "./types";
export declare function abortOnError({ method, path, config, postObject, }: HandleRequestInputProps): Promise<ResponseObject>;
export declare function tryNextOnError({ method, path, config, postObject, }: HandleRequestInputProps): Promise<ResponseObject>;
export declare const errorMessages: {
NO_CONSENSUS: string;
};
export declare function queryMajority({ method, path, config, postObject, }: HandleRequestInputProps & {
forceSingleEndpoint?: boolean;
}): Promise<ResponseObject>;
export declare function singleEndpoint({ method, path, config, postObject, }: Omit<RetryRequestProps, "unreachableDuration">): Promise<ResponseObject>;
type RetryRequest = RetryRequestProps & {
validateStatusCode: (statusCode: number) => boolean;
};
export declare function retryRequest({ method, path, config, postObject, validateStatusCode, }: RetryRequest): Promise<ResponseObject>;
export declare function racePromisesWithTimeout<T>(promises: Promise<T>[], timeout: number): Promise<Promise<T>[]>;
export declare function createTimeoutPromise(timeoutMs: number): Promise<never>;
export declare const checkStateOfPromises: <T>(promises: Promise<T>[]) => Promise<{
status: string;
value: Promise<T>;
}[]>;
interface HasResult<R> {
result: R;
}
export declare const groupResponses: <T extends HasResult<unknown>>(responses: T[]) => {
maxNumberOfEqualResponses: () => number;
numberOfDistinctResponses: () => number;
majorityResponse: () => unknown;
};
export {};