UNPKG

wgc

Version:

The official CLI tool to manage the GraphQL Federation Platform Cosmo

79 lines (78 loc) 2.26 kB
import type { FederatedGraph, Subgraph } from '@wundergraph/cosmo-connect/dist/platform/v1/platform_pb'; import type { BaseCommandOptions } from '../../core/types/types.js'; /** * Retrieve user information [email] and [organization name] */ export declare function fetchUserInfo(client: BaseCommandOptions['client']): Promise<{ userInfo: import("@wundergraph/cosmo-connect/dist/platform/v1/platform_pb").WhoAmIResponse; error: null; } | { userInfo: null; error: Error; }>; /** * Retrieve onboarding record. Provides information about allowed [status]: * [error] | [not-allowed] | [ok] * If record exists, returns [onboarding] metadata. */ export declare function checkExistingOnboarding(client: BaseCommandOptions['client']): Promise<{ readonly error: Error; readonly status: "error"; readonly onboarding?: undefined; } | { readonly status: "not-allowed"; readonly error?: undefined; readonly onboarding?: undefined; } | { readonly onboarding: { readonly finishedAt: string | undefined; }; readonly status: "ok"; readonly error?: undefined; }>; /** * Retrieves federated graph by [name] *demo*. Missing federated graph * is a valid state. */ export declare function fetchFederatedGraphByName(client: BaseCommandOptions['client'], { name, namespace }: { name: string; namespace: string; }): Promise<{ data: { graph: FederatedGraph | undefined; subgraphs: Subgraph[]; }; error: null; } | { data: null; error: null; } | { data: null; error: Error; }>; /** * Cleans up the federated graph by [name] _demo_ and its related * subgraphs. */ export declare function cleanUpFederatedGraph(client: BaseCommandOptions['client'], graphData: { graph: FederatedGraph; subgraphs: Subgraph[]; }): Promise<{ error: Error; } | { error: null; }>; /** * Creates federated graph using default [name] and [namespace], with pre-defined * [labelMatcher] which identify the graph as _demo_. */ export declare function createFederatedGraph(client: BaseCommandOptions['client'], options: { name: string; namespace: string; labelMatcher: string; routingUrl: URL; }): Promise<{ error: null; } | { error: Error; }>;