@jhzhu89/azure-client-pool
Version:
Azure client lifecycle management with intelligent caching and authentication
13 lines • 977 B
TypeScript
import { type ClientFactory } from "../types.js";
import { type AuthRequest } from "../types.js";
import { type RequestMapper, type AuthRequestFactory } from "./request-mapper.js";
export interface ClientProvider<TClient, TOptions = void> {
getClient(authRequest: AuthRequest, options?: TOptions): Promise<TClient>;
invalidateClientCache(authRequest: AuthRequest, options?: TOptions): Promise<boolean>;
}
export declare function createClientProvider<TClient, TOptions = void>(clientFactory: ClientFactory<TClient, TOptions>): Promise<ClientProvider<TClient, TOptions>>;
export declare function createClientProviderWithMapper<TClient, TRequest, TOptions = void>(clientFactory: ClientFactory<TClient, TOptions>, requestMapper: RequestMapper<TRequest, TOptions>, authRequestFactory: AuthRequestFactory): Promise<{
getClient(request: TRequest): Promise<TClient>;
invalidateClientCache(request: TRequest): Promise<boolean>;
}>;
//# sourceMappingURL=provider.d.ts.map