@analogjs/trpc
Version:
Angular/Nitro-based tRPC integration
23 lines (22 loc) • 1.28 kB
TypeScript
import { InjectionToken, Provider } from '@angular/core';
import 'isomorphic-fetch';
import { HttpBatchLinkOptions, CreateTRPCClientOptions, HTTPHeaders } from '@trpc/client';
import { AnyRouter } from '@trpc/server';
import { createTRPCRxJSProxyClient } from './trpc-rxjs-proxy';
export type TrpcOptions<T extends AnyRouter> = {
url: string;
options?: Partial<CreateTRPCClientOptions<T>>;
batchLinkOptions?: Omit<HttpBatchLinkOptions, 'url' | 'headers'>;
};
export type TrpcClient<AppRouter extends AnyRouter> = ReturnType<typeof createTRPCRxJSProxyClient<AppRouter>>;
export declare const createTrpcClient: <AppRouter extends AnyRouter>({ url, options, batchLinkOptions, }: TrpcOptions<AppRouter>) => {
TrpcClient: InjectionToken<import("./trpc-rxjs-proxy").CreateTrpcProxyClient<AppRouter>>;
provideTrpcClient: () => Provider[];
TrpcHeaders: import("@angular/core").WritableSignal<HTTPHeaders>;
/** @deprecated use TrpcClient instead */
tRPCClient: InjectionToken<import("./trpc-rxjs-proxy").CreateTrpcProxyClient<AppRouter>>;
/** @deprecated use provideTrpcClient instead */
provideTRPCClient: () => Provider[];
/** @deprecated use TrpcHeaders instead */
tRPCHeaders: import("@angular/core").WritableSignal<HTTPHeaders>;
};