3360d9e3创建于 1 天前历史提交
/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *--------------------------------------------------------------------------------------------*/

/**
 * Copilot SDK - TypeScript/Node.js Client
 *
 * JSON-RPC based SDK for programmatic control of GitHub Copilot CLI
 */

export { CopilotClient } from "./client.js";
export type { HostLocalServerOptions, HostGitHubEnvironmentOptions } from "./generated/rpc.js";
export {
    AhpHost,
    type AhpHostExit,
    type AhpHostOptions,
    type AhpSessionCreateRequest,
    type AhpSessionResumeRequest,
} from "./host.js";
export { DisableBypassPermissionsModes, RuntimeConnection } from "./types.js";
export { BuiltInTools, ToolSet } from "./toolSet.js";
export { CopilotSession, type AssistantMessageEvent } from "./session.js";
export { defineWorkflow, WorkflowResumeError, isWorkflowRunTerminal } from "./workflow.js";
export {
    Canvas,
    CanvasError,
    createCanvas,
    type CanvasAction,
    type CanvasDeclaration,
    type CanvasHostContext,
    type CanvasHostContextCapabilities,
    type CanvasJsonSchema,
    type CanvasOptions,
} from "./canvas.js";
export {
    defineTool,
    approveAll,
    createAttributedPermissionResult,
    convertMcpCallToolResult,
    createSessionFsAdapter,
    CopilotRequestHandler,
    CopilotWebSocketHandler,
    CopilotWebSocketCloseStatus,
    CopilotWebSocketForwarder,
    SessionFsSqliteTransactionFailure,
    SessionFsWriteFailure,
    SYSTEM_MESSAGE_SECTIONS,
} from "./types.js";
// Re-export the generated session-event types (every *Event interface and
// its corresponding *Data payload type, plus supporting unions/aliases) so
// consumers can import them directly from "@github/copilot-sdk" instead of
// reaching into the package's internal dist layout. See issue #1156.
//
// Six names from this file are also explicitly exported elsewhere in this
// module — `SessionEvent` (re-exported below from `./types.js`),
// `PermissionRequest` (re-exported below from `./types.js`),
// `PermissionRequestedData`/`PermissionRequestedEvent` (also re-exported below
// from `./types.js`), `AssistantMessageEvent` (re-exported above from
// `./session.js`), and `JsonValue` (re-exported below from `./workflow.js`).
// Per the ECMAScript module spec, the explicit named re-exports
// shadow the names arriving via `export type *`, so the hand-authored public API
// surface for those six identifiers is preserved unchanged.
export type * from "./generated/session-events.js";
export type {
    AskUserVariant,
    CommandContext,
    CommandDefinition,
    CommandHandler,
    CanvasProviderIdentity,
    CloudSessionOptions,
    CloudSessionRepository,
    AuthIdentityMetadata,
    AuthInfoType,
    ConnectorAccountRequest,
    ConnectorAvailability,
    ConnectorCapabilities,
    ConnectorCatalogEntry,
    ConnectorCatalogResult,
    ConnectorCatalogStatus,
    ConnectorConnectRequest,
    ConnectorConnectResult,
    ConnectorContinueRequest,
    ConnectorDisconnectResult,
    ConnectorMcpStatus,
    ConnectorReconcileRequest,
    ConnectorRuntimeStatus,
    ConnectorSessionAccount,
    ConnectorSessionAccountResult,
    ConnectorStatus,
    AutoModeSwitchHandler,
    AutoModeSwitchRequest,
    AutoModeSwitchResponse,
    AgentStopHandler,
    AgentStopHookInput,
    AgentStopHookOutput,
    SubagentStartHandler,
    SubagentStartHookInput,
    SubagentStartHookOutput,
    SubagentStopHandler,
    SubagentStopHookInput,
    SubagentStopHookOutput,
    UserPromptTransformedHandler,
    UserPromptTransformedHookInput,
    UserPromptTransformedHookOutput,
    CopilotClientInfo,
    CopilotClientMode,
    CopilotClientOptions,
    InstallationConfirmationHandler,
    InstallationConfirmationRequest,
    InstallationConfirmationResponse,
    InstallationDecision,
    InstallationReview,
    McpInstallationReview,
    CopilotExpAssignmentResponse,
    StdioRuntimeConnection,
    InProcessRuntimeConnection,
    TcpRuntimeConnection,
    UriRuntimeConnection,
    ChildProcessRuntimeConnection,
    CustomAgentConfig,
    ElicitationFieldValue,
    ElicitationHandler,
    ElicitationParams,
    ElicitationContext,
    ElicitationResult,
    ElicitationSchema,
    ElicitationSchemaField,
    ExpConfigEntry,
    ExpFlagValue,
    ExitPlanModeHandler,
    ExitPlanModeRequest,
    ExitPlanModeResult,
    ExtensionLaunchProfile,
    ExtensionLaunchProvider,
    ExtensionLaunchProviderResolveRequest,
    ExtensionLaunchProviderResolveResult,
    ExtensionInfo,
    ForegroundSessionInfo,
    GetAuthStatusResponse,
    GetStatusResponse,
    GitHubMcpToolConfig,
    GitHubTelemetryNotification,
    GitHubTelemetryEvent,
    GitHubTelemetryClientInfo,
    GitHubTokenAcquireReason,
    GitHubTokenAcquireResult,
    GitHubTokenProvider,
    GitHubTokenProviderArgs,
    GitHubTokenProviderResult,
    InfiniteSessionConfig,
    LargeToolOutputConfig,
    MemoryConfiguration,
    UiInputOptions,
    MCPStdioServerConfig,
    MCPHTTPServerConfig,
    MCPServerConfig,
    DefaultAgentConfig,
    BearerTokenProvider,
    ExtensionContextAttachment,
    MessageOptions,
    ResponseSchema,
    MessageSource,
    ManagedSettings,
    ManagedSettingsPermissions,
    ModelBilling,
    ModelBillingTokenPrices,
    ModelBillingTokenPricesLongContext,
    AutoTier,
    CapiSessionOptions,
    CurrentModel,
    ModelSwitchAutoTierResult,
    ModelSwitchAutoTierStatus,
    ModelCapabilities,
    ModelCapabilitiesOverride,
    ModelInfo,
    ModelPolicy,
    NamedProviderConfig,
    PermissionHandler,
    PermissionRequest,
    PermissionRequestedData,
    PermissionRequestedEvent,
    PermissionRequestResult,
    AttributedPermissionResult,
    PermissionDecisionContext,
    PermissionDecisionOutcome,
    PermissionDecisionSource,
    PermissionDecisionSurface,
    PermissionResponseCapability,
    ProviderConfig,
    ProviderConfigModelProvider,
    ProviderModelConfig,
    ProviderTokenArgs,
    RemoteSessionMode,
    SandboxConfigSource,
    ResumeSessionConfig,
    TranscriptRecovery,
    SectionOverride,
    SectionOverrideAction,
    SectionTransformFn,
    SessionCapabilities,
    SessionConfig,
    SessionConfigBase,
    SessionEvent,
    SessionEventHandler,
    SessionEventPayload,
    SessionEventType,
    SessionLifecycleEvent,
    SessionLifecycleEventMetadata,
    SessionLifecycleEventType,
    SessionLifecycleHandler,
    SessionHooks,
    SessionCreatedEvent,
    SessionDeletedEvent,
    SessionUpdatedEvent,
    SessionForegroundEvent,
    SessionBackgroundEvent,
    SessionContext,
    SessionListFilter,
    SessionMetadata,
    SessionUiApi,
    SessionFsConfig,
    SessionFsProvider,
    SessionFsFileInfo,
    SessionFsSqliteQueryResult,
    SessionFsSqliteQueryType,
    SessionFsSqliteProvider,
    SessionFsSqliteStatement,
    SessionFsSqliteTransactionErrorClass,
    SkillProvider,
    SkillProviderCallOptions,
    SkillProviderDescriptor,
    CopilotRequestContext,
    SystemMessageAppendConfig,
    SystemMessageConfig,
    SystemMessageCustomizeConfig,
    SystemMessageReplaceConfig,
    SystemMessageSection,
    TelemetryConfig,
    TraceContext,
    TraceContextProvider,
    Tool,
    ToolHandler,
    ToolInvocation,
    CurrentToolMetadata,
    ToolTelemetry,
    ToolResultObject,
    ToolSearchConfig,
    TypedSessionEventHandler,
    TypedSessionLifecycleHandler,
    ZodSchema,
} from "./types.js";
export type {
    JsonValue,
    WorkflowRunOptions,
    WorkflowResumeOptions,
    WorkflowLimitOverrides,
    WorkflowResumeErrorCode,
    SessionWorkflowApi,
    WorkflowAgentOptions,
    WorkflowContext,
    WorkflowDefinition,
    WorkflowHandle,
    WorkflowJsonSchema,
    WorkflowLimits,
    WorkflowMeta,
    WorkflowPipelineStage,
    WorkflowStepOptions,
    WorkflowRunResult,
    WorkflowRunStatus,
    WorkflowRunSummary,
    WorkflowListRunsOptions,
    WorkflowRunsPage,
    WorkflowRunDetail,
    WorkflowProgressPage,
    WorkflowProgressLine,
    WorkflowPhaseObservation,
    WorkflowPhaseStatus,
    WorkflowAgentSummary,
} from "./workflow.js";