UNPKG

@lodestar/api

Version:

A Typescript REST client for the Ethereum Consensus API

11 lines 1.03 kB
import { Endpoint, HasOnlyOptionalProps, RouteDefinition, RouteDefinitions } from "../types.js"; import { IHttpClient } from "./httpClient.js"; import { ApiRequestInit } from "./request.js"; import { ApiResponse } from "./response.js"; export type ApiClientMethod<E extends Endpoint> = E["args"] extends void ? (init?: ApiRequestInit) => Promise<ApiResponse<E>> : HasOnlyOptionalProps<E["args"]> extends true ? (args?: E["args"], init?: ApiRequestInit) => Promise<ApiResponse<E>> : (args: E["args"], init?: ApiRequestInit) => Promise<ApiResponse<E>>; export type ApiClientMethods<Es extends Record<string, Endpoint>> = { [K in keyof Es]: ApiClientMethod<Es[K]>; }; export declare function createApiClientMethod<E extends Endpoint>(definition: RouteDefinition<E>, client: IHttpClient, operationId: string): ApiClientMethod<E>; export declare function createApiClientMethods<Es extends Record<string, Endpoint>>(definitions: RouteDefinitions<Es>, client: IHttpClient): ApiClientMethods<Es>; //# sourceMappingURL=method.d.ts.map