UNPKG

@temporalio/client

Version:
55 lines (54 loc) 2.41 kB
/** * Client for communicating with Temporal Server. * * Most functionality is available through {@link WorkflowClient}, but you can also call gRPC methods directly using {@link Connection.workflowService} and {@link Connection.operatorService}. * * ### Usage * * ```ts * import { Connection, Client } from '@temporalio/client'; * import { loadClientConnectConfig } from '@temporalio/envconfig'; * import { sleepForDays } from './workflows'; * import { nanoid } from 'nanoid'; * * async function run() { * const config = loadClientConnectConfig(); * const connection = await Connection.connect(config.connectionOptions); * const client = new Client({ connection }); * * const handle = await client.workflow.start(sleepForDays, { * taskQueue: 'sleep-for-days', * workflowId: 'workflow-' + nanoid(), * }); * console.log(`Started workflow ${handle.workflowId}`); * * // Wait for workflow completion (runs indefinitely until it receives a signal) * console.log(await handle.result()); * } * * run().catch((err) => { * console.error(err); * process.exit(1); * }); * ``` * @module */ export { ActivityFailure, ApplicationFailure, CancelledFailure, ChildWorkflowFailure, DataConverter, defaultPayloadConverter, ProtoFailure, RetryPolicy, ServerFailure, TemporalFailure, TerminatedFailure, TimeoutFailure, WorkflowExecutionAlreadyStartedError, } from '@temporalio/common'; export { TLSConfig } from '@temporalio/common/lib/internal-non-workflow'; export * from '@temporalio/common/lib/errors'; export * from '@temporalio/common/lib/interfaces'; export * from '@temporalio/common/lib/workflow-handle'; export * from './async-completion-client'; export * from './client'; export { Connection, ConnectionOptions, ConnectionOptionsWithDefaults, ConnectionPlugin, LOCAL_TARGET, } from './connection'; export * from './errors'; export * from './grpc-retry'; export * from './interceptors'; export * from './types'; export * from './workflow-client'; export * from './workflow-options'; export * from './schedule-types'; export * from './schedule-client'; export * from './task-queue-client'; export { WorkflowUpdateStage } from './workflow-update-stage'; export { WorkerBuildIdVersionSets, BuildIdVersionSet, BuildIdOperation, PromoteSetByBuildId, PromoteBuildIdWithinSet, MergeSets, AddNewIdInNewDefaultSet, AddNewCompatibleVersion, } from './build-id-types';