@vtex/api
Version:
VTEX I/O API client
37 lines (36 loc) • 1.59 kB
TypeScript
import { InstanceOptions } from '../HttpClient';
import { IOContext } from '../service/worker/runtime/typings';
import { Billing, Builder, MessagesGraphQL, Settings } from './apps';
import { CatalogGraphQL } from './apps/catalogGraphQL/index';
import { ID, MasterData, PaymentProvider } from './external';
import { Apps, Assets, BillingMetrics, Events, Registry, Router, VBase, Workspaces } from './infra';
import { IOClientConstructor } from './IOClient';
import { LicenseManager, Segment, Session, TenantClient } from './janus';
export type ClientsImplementation<T extends IOClients> = new (clientOptions: Record<string, InstanceOptions>, ctx: IOContext) => T;
export declare class IOClients {
private clientOptions;
private ctx;
private clients;
constructor(clientOptions: Record<string, InstanceOptions>, ctx: IOContext);
get apps(): Apps;
get assets(): Assets;
get billing(): Billing;
get billingMetrics(): BillingMetrics;
get builder(): Builder;
get events(): Events;
get id(): ID;
get licenseManager(): LicenseManager;
get masterdata(): MasterData;
get messagesGraphQL(): MessagesGraphQL;
get registry(): Registry;
get router(): Router;
get segment(): Segment;
get settings(): Settings;
get session(): Session;
get tenant(): TenantClient;
get vbase(): VBase;
get workspaces(): Workspaces;
get catalogGraphQL(): CatalogGraphQL;
get paymentProvider(): PaymentProvider;
protected getOrSet<TClient extends IOClientConstructor>(key: string, Implementation: TClient): InstanceType<TClient>;
}