import type { ContractRouterClient } from "@orpc/contract"; import { type CreateWebhookInput, type CreateWebhookOutput, type DeleteArtifactInput, type DeleteArtifactOutput, type DeleteWebhookInput, type DeleteWebhookOutput, type DownloadArtifactInput, type DownloadArtifactOutput, type EnableWebhookInput, type EnableWebhookOutput, type GetArtifactInput, type GetArtifactOutput, type GetWebhookInput, type GetWebhookOutput, type ListArtifactsInput, type ListArtifactsOutput, type ListIssueArtifactsInput, type ListIssueArtifactsOutput, type ListWebhookDeliveriesInput, type ListWebhookDeliveriesOutput, type ListWebhooksInput, type ListWebhooksOutput, type RotateWebhookSecretInput, type RotateWebhookSecretOutput, type SubscribeWebhookInput, type SubscribeWebhookOutput, type TestWebhookInput, type TestWebhookOutput, type UnsubscribeWebhookInput, type UnsubscribeWebhookOutput, type UpdateWebhookInput, type UpdateWebhookOutput, type AddComponentRelationshipInput, type AddReposInput, type AddReposOutput, type AddTeamMemberInput, type AddTeamMemberOutput, type AssignComponentTeamInput, type AssignComponentTeamOutput, type AutoTopUpSettings, type BeginConnectedAccountConnectInput, type BeginConnectedAccountConnectOutput, type BeginIntegrationConnectInput, type BeginIntegrationConnectOutput, type BeginMcpOAuthInstallInput, type BeginMcpOAuthInstallOutput, type CallMcpConnectorToolInput, type CallMcpConnectorToolOutput, type CancelRunInput, type CancelRunOutput, type ChangePlanInput, type ChangePlanOutput, type CheckoutSessionStatus, type CommentOnTaskInput, type CommentOnTaskOutput, type CommentOnWorkItemInput, type CommentOnWorkItemOutput, type CommitComponentMergeInput, type CommitComponentMergeOutput, type CommitComponentReactivationInput, type CommitComponentReactivationOutput, type ComponentRelationshipMutationOutput, type CountIssuesInput, type CountIssuesOutput, type CreateAutomationInput, type CreateAutomationOutput, type CreateCheckoutSessionInput, type CreateCheckoutSessionOutput, type CreateDeliveryRuleInput, type CreateDeliveryRuleOutput, type CreateIntegrationConnectionInput, type CreateIntegrationConnectionOutput, type CreateIssueInput, type CreateIssueOutput, type CreateLogSourceInput, type CreateLogSourceOutput, type CreateLogStreamInput, type CreateLogStreamOutput, type CreateMcpConnectorInput, type CreateMcpConnectorOutput, type CreateSlackChannelInput, type CreateSlackChannelOutput, type CreatePortalSessionInput, type CreatePortalSessionOutput, type CreateProjectInput, type CreateProjectOutput, type CreateProjectScriptInput, type CreateProjectScriptOutput, type CreatePublicKeyOutput, type CreateSecretKeyInput, type CreateSecretKeyOutput, type CreateSignalDefinitionInput, type CreateSignalDefinitionOutput, type CreateTeamInput, type CreateTeamOutput, type CreateThreadShareLinkInput, type CreateThreadShareLinkOutput, type CreateUserOrganizationInput, type CreateUserOrganizationOutput, type CreateTaskInput, type CreateTaskOutput, type CreateWorkItemInput, type CreateWorkItemOutput, type DeactivatePublicKeyInput, type DeactivatePublicKeyOutput, type DeleteDeliveryRuleInput, type DeleteDeliveryRuleOutput, type DeleteKeyOutput, type DeleteLogSourceInput, type DeleteLogSourceOutput, type DeleteLogStreamInput, type DeleteLogStreamOutput, type DeleteProjectMemoryInput, type DeleteProjectMemoryOutput, type DeleteProjectScriptInput, type DeleteProjectScriptOutput, type DeleteSandboxEnvironmentVariableInput, type DeleteSandboxEnvironmentVariableOutput, type DeleteSandboxCliInput, type DeleteSandboxCliOutput, type DeleteSecretKeyInput, type DeleteTeamInput, type DeleteTeamOutput, type DeliveryRuleOptionsOutput, type DeregisterComponentInput, type DeregisterComponentOutput, type DescribeMcpConnectorToolInput, type DescribeMcpConnectorToolOutput, type DisableAutomationInput, type DisableAutomationOutput, type DisableSignalDefinitionInput, type DisableSignalDefinitionOutput, type DisconnectConnectedAccountInput, type DisconnectConnectedAccountOutput, type DisconnectIntegrationConnectionInput, type DisconnectIntegrationConnectionOutput, type DisconnectMcpConnectorInput, type EnableAutomationInput, type EnableAutomationOutput, type EnsureLogForwardingPublicKeyInput, type FinishOnboardingInput, type FinishOnboardingOutput, type ForkThreadInput, type ForkThreadOutput, type GetAccruedUsageChargesInput, type GetAccruedUsageChargesOutput, type GetAutomationInput, type GetAutomationOutput, type GetAutomationRunInput, type GetAutomationRunLogsInput, type GetAutomationRunLogsOutput, type GetAutomationRunOutput, type GetAutoTopUpInput, type GetBillingSummaryInput, type GetBillingSummaryOutput, type GetBillingUsageInput, type GetBillingUsageOutput, type GetCheckoutSessionStatusInput, type GetComponentInput, type GetComponentOutput, type GetConnectedAccountConnectAttemptInput, type GetConnectedAccountConnectAttemptOutput, type GetIntegrationConnectAttemptInput, type GetIntegrationConnectAttemptOutput, type GetIntegrationConnectionInput, type GetIntegrationConnectionOutput, type GetIssueInput, type GetIssueOutput, type GetKeyInput, type GetLogSourceInput, type GetLogSourceOutput, type GetLogStreamInput, type GetLogStreamOutput, type GetMcpConnectorDetailsInput, type GetMcpConnectorDetailsOutput, type GetMcpConnectorInput, type GetMcpConnectorOutput, type GetMcpOAuthInstallAttemptInput, type GetMcpOAuthInstallAttemptOutput, type GetOnboardingStateInput, type GetOnboardingStateOutput, type GetOrganizationInput, type GetOrganizationOutput, type GetPaymentMethodInput, type GetProjectDetailsOutput, type GetProjectInput, type GetProjectMemoryInput, type GetProjectMemoryOutput, type GetProjectNotificationChannelsInput, type GetProjectNotificationChannelsOutput, type GetProjectScriptInput, type GetProjectScriptOutput, type GetSandboxEnvironmentVariableInput, type GetSandboxEnvironmentVariableOutput, type GetPublicKeyOutput, type GetRunInput, type GetRunOutput, type GetSecretKeyInput, type GetSecretKeyOutput, type GetSignalDefinitionInput, type GetSignalDefinitionOutput, type GetStatusTimelineInput, type GetStatusTimelineOutput, type GetThreadInput, type GetThreadOutput, type GetThreadStatusInput, type GetThreadStatusOutput, type IgnoreIssueInput, type IgnoreIssueOutput, type InviteMemberInput, type InviteMemberOutput, type ListAutomationRunsInput, type ListAutomationRunsOutput, type ListAutomationTemplatesOutput, type ListAutomationsInput, type ListAutomationsOutput, type ListBillingTransactionsInput, type ListBillingTransactionsOutput, type ListComponentRelationshipsInput, type ListComponentRelationshipsOutput, type ListComponentsInput, type ListComponentsOutput, type ListConnectedAccountsInput, type ListConnectedAccountsOutput, type ListDeliveryRulesInput, type ListDeliveryRulesOutput, type ListIntegrationConnectionsInput, type ListIntegrationConnectionsOutput, type ListIntegrationProvidersInput, type ListIntegrationProvidersOutput, type ListInvitationsInput, type ListInvitationsOutput, type ListIssuesInput, type ListIssuesOutput, type ListKeysInput, type ListLogSourceProvidersOutput, type ListLogSourcesInput, type ListLogSourcesOutput, type ListLogStreamsInput, type ListLogStreamsOutput, type ListMcpConnectorsInput, type ListMcpConnectorsOutput, type ListMcpProvidersOutput, type ListMembersInput, type ListMembersOutput, type ListMessagesInput, type ListMessagesOutput, type ListOrganizationsOutput, type ListPlansInput, type ListPlansOutput, type ListProjectMemoryInput, type ListProjectMemoryOutput, type ListProjectScriptsInput, type ListProjectScriptsOutput, type ListProjectsInput, type ListProjectsOutput, type ListPublicKeysOutput, type ListPullRequestsInput, type ListPullRequestsOutput, type ListRecommendationsInput, type ListRecommendationsOutput, type ListReposInput, type ListReposOutput, type ListRunsInput, type ListRunsOutput, type ListSandboxEnvironmentVariablesInput, type ListSandboxEnvironmentVariablesOutput, type ListSandboxCliConnectionsInput, type ListSandboxCliConnectionsOutput, type ListSandboxCliTypesOutput, type ListSecretKeysInput, type ListSecretKeysOutput, type ListSignalDefinitionsInput, type ListSignalDefinitionsOutput, type ListStatusIncidentsInput, type ListStatusIncidentsOutput, type ListTasksInput, type ListTasksOutput, type ListTeamMembersInput, type ListTeamMembersOutput, type ListTeamsInput, type ListTeamsOutput, type ListThreadRunsInput, type ListThreadRunsOutput, type ListThreadShareLinksInput, type ListThreadShareLinksOutput, type ListThreadsInput, type ListThreadsOutput, type ListUsageInvoicesInput, type ListUsageInvoicesOutput, type AskLogsInput, type AskLogsOutput, type LogsVolumeInput, type LogsVolumeOutput, type MeOutput, type MuteIssueInput, type MuteIssueOutput, type PaymentMethodSummary, type PreviewComponentMergeInput, type PreviewComponentMergeOutput, type PreviewComponentReactivationInput, type PreviewComponentReactivationOutput, type PreviewComponentRelationshipInput, type PreviewComponentRelationshipOutput, type PreviewPlanChangeInput, type PreviewPlanChangeOutput, type PublicApiContract, type PurchaseCreditsInput, type PurchaseCreditsOutput, type PutProjectMemoryInput, type PutProjectMemoryOutput, type QueryLogsInput, type QueryLogsOutput, type QuerySpecLogsInput, type QuerySpecLogsOutput, type ReassignLogStreamInput, type ReassignLogStreamOutput, type RegisterComponentInput, type RegisterComponentOutput, type RemoveComponentRelationshipInput, type RemoveMemberInput, type RemoveMemberOutput, type RemoveRepoInput, type RemoveRepoOutput, type RemoveTeamMemberInput, type RemoveTeamMemberOutput, type RenameComponentInput, type RenameComponentOutput, type ReopenIssueInput, type ReopenIssueOutput, type ResolveIssueInput, type ResolveIssueOutput, type ResumeSubscriptionCancellationOutput, type RevokeInvitationInput, type RevokeInvitationOutput, type RevokeThreadShareLinkInput, type RevokeThreadShareLinkOutput, type RunResult, type ScheduleSubscriptionCancellationOutput, type SearchIssuesInput, type SearchIssuesOutput, type SearchMcpConnectorToolsInput, type SearchMcpConnectorToolsOutput, type SearchMessagesInput, type SearchMessagesOutput, type SearchProjectMemoryInput, type SearchProjectMemoryOutput, type SearchThreadsInput, type SearchThreadsOutput, type SetMcpConnectorReadOnlyInput, type SetMcpConnectorReadOnlyOutput, type SetThreadVisibilityInput, type SetThreadVisibilityOutput, type ContinueOnboardingWithFreeInput, type ContinueOnboardingWithFreeOutput, type CompleteOnboardingSampleIssueInput, type CompleteOnboardingSampleIssueOutput, type SkipOnboardingSampleIssueInput, type SkipOnboardingSampleIssueOutput, type SkipTaskInput, type SkipTaskOutput, type StopThreadInput, type StopThreadOutput, type UnskipTaskInput, type UnskipTaskOutput, type SubscriptionCancellationInput, type SubscriptionCancellationPreview, type CreateSupportTicketInput, type CreateSupportTicketOutput, type GetSupportTicketAvailabilityOutput, type TestSandboxCliInput, type TestSandboxCliOutput, type TransitionTaskInput, type TransitionTaskOutput, type TransitionWorkItemInput, type TransitionWorkItemOutput, type UnmuteIssueInput, type UnmuteIssueOutput, type UpdateAutomationInput, type UpdateAutomationOutput, type UpdateAutoTopUpInput, type UpdateDeliveryRuleInput, type UpdateDeliveryRuleOutput, type UpdateIntegrationConnectionCredentialsInput, type UpdateIntegrationConnectionCredentialsOutput, type UpdateKeyInput, type UpdateLogSourceInput, type UpdateLogSourceOutput, type UpdateLogStreamInput, type UpdateLogStreamOutput, type UpdateMcpConnectorInput, type UpdateMcpConnectorOutput, type UpdateMemberRoleInput, type UpdateMemberRoleOutput, type UpdateOrganizationInput, type UpdateOrganizationOutput, type UpdateProjectScriptInput, type UpdateProjectScriptOutput, type UpdateSecretKeyInput, type UpdateSignalDefinitionInput, type UpdateSignalDefinitionOutput, type UpdateTeamInput, type UpdateTeamOutput, type UpdateThreadInput, type UpdateThreadOutput, type UpsertSandboxCliInput, type UpsertSandboxCliOutput, type UpsertSandboxEnvironmentVariablesInput, type UpsertSandboxEnvironmentVariablesOutput } from "../public-api/index.js"; import { type AgentEventStream, type AgentRunStreamParams, type AgentThreadStreamParams } from "./agent-stream-transports.js"; import { type ForwardLogsOutput, type ForwardLogsParams, type TailLogStream, type TailLogsParams } from "./log-transports.js"; export type { AgentStreamControlFrame, AgentStreamCursor, PublicAgentStreamEvent, PublicAgentStreamEventType, } from "../public-api/index.js"; export { AgentStreamControlFrameSchema, PublicAgentStreamEventSchema, PublicAgentStreamEventTypeSchema, } from "../public-api/index.js"; export type { AgentEventStream, AgentRunStreamParams, AgentStreamCredentialProvider, AgentThreadStreamParams, } from "./agent-stream-transports.js"; export type { ForwardLogsInput, ForwardLogsOutput, ForwardLogsParams, TailLogEntry, TailLogFilters, TailLogResource, TailLogStream, TailLogsInput, TailLogsParams, } from "./log-transports.js"; export { ForwardLogsInputSchema, ForwardLogsOutputSchema, forwardLogsExamples, TailLogEntrySchema, TailLogFiltersSchema, TailLogResourceSchema, TailLogsInputSchema, } from "./log-transports.js"; /** * Provides credentials and contextual selections for SDK calls. */ export interface CredentialProvider { getToken(): string | Promise; getOrganizationId?(): string | undefined | Promise; getProjectId?(): string | undefined | Promise; } /** * Runtime configuration for the public API SDK. */ export interface CreateClientOptions { apiBaseUrl?: string; credentialProvider: CredentialProvider; fetch?: typeof globalThis.fetch; intakeBaseUrl?: string; tailBaseUrl?: string; /** * Identifies the client surface making the request (e.g. "cli", "mcp"). Sent * as the `x-sazabi-client-source` header so the public API can record the * true provenance of agent runs and their initiating messages instead of * flattening every SDK caller to "api". Omit for raw SDK/API callers. */ clientSource?: string; /** * Version of the client surface making the request (e.g. the installed CLI * version). Sent as the `x-sazabi-client-version` header so the API can log * version skew per request (ENG-6768). Omit when the caller has no * meaningful version. */ clientVersion?: string; /** Opaque run-scoped actor descriptor injected into trusted sandboxes. */ sandboxActorDescriptor?: string; } /** * Caller-facing input for deferred thread creation. */ export interface CreateThreadParams { message: string; projectId?: string; wait?: boolean; timeoutSeconds?: number; automationId?: string; /** Purpose the thread is started for; `support` opens a conversation with Sazabi support. */ kind?: "support"; } /** * Caller-facing input for deferred message append. */ export interface AppendMessageParams { threadId: string; message: string; wait?: boolean; timeoutSeconds?: number; automationId?: string; } /** * Polling options for deferred runs. */ export interface WaitForCompletionOptions { intervalMs?: number; timeoutMs?: number; } /** * Input for beginning a device authorization flow. */ export interface StartDeviceAuthorizationOptions { apiBaseUrl?: string; clientId?: string; scope?: string; fetch?: typeof globalThis.fetch; } /** * Input for polling a device authorization flow. */ export interface PollDeviceAuthorizationOptions { apiBaseUrl?: string; clientId?: string; deviceCode: string; fetch?: typeof globalThis.fetch; } /** * Device authorization response returned when the flow starts. */ export interface DeviceAuthorizationStart { deviceCode: string; userCode: string; verificationUri: string; verificationUriComplete: string; expiresIn: number; interval: number; } /** * Pending poll state. */ export interface DeviceAuthorizationPending { status: "pending"; interval?: number; } /** * Successful poll state. */ export interface DeviceAuthorizationAuthorized { status: "authorized"; accessToken: string; tokenType: string; expiresIn: number; scope: string; } /** * Denied poll state. */ export interface DeviceAuthorizationDenied { status: "denied"; message: string; } /** * Expired poll state. */ export interface DeviceAuthorizationExpired { status: "expired"; message: string; } /** * Poll result for device authorization. */ export type DeviceAuthorizationPollResult = DeviceAuthorizationPending | DeviceAuthorizationAuthorized | DeviceAuthorizationDenied | DeviceAuthorizationExpired; /** * SDK surface for contract-backed operations plus custom log transports. */ export interface PublicSdkClient { raw: ContractRouterClient; me(): Promise; artifacts: { list(input?: Partial): Promise; listIssueArtifacts(input: ListIssueArtifactsInput): Promise; get(input: GetArtifactInput): Promise; download(input: DownloadArtifactInput): Promise; delete(input: DeleteArtifactInput): Promise; }; automations: { list(input?: Partial): Promise; get(input: GetAutomationInput): Promise; create(input: CreateAutomationInput): Promise; update(input: UpdateAutomationInput): Promise; enable(input: EnableAutomationInput): Promise; disable(input: DisableAutomationInput): Promise; runs: { list(input: Pick & Partial>): Promise; get(input: GetAutomationRunInput): Promise; logs(input: GetAutomationRunLogsInput): Promise; }; }; automationTemplates: { /** List the published automation template catalog (global, metadata only). */ list(): Promise; }; logs: { query(input: QueryLogsInput): Promise; /** Runs a typed (v2) log query spec through the log query router (POST /logs/query-spec). */ querySpec(input: QuerySpecLogsInput): Promise; ask(input: AskLogsInput): Promise; volume(input: LogsVolumeInput): Promise; tail(input: TailLogsParams): Promise; forward(input: ForwardLogsParams): Promise; }; onboarding: { getState(input?: Partial): Promise; skipSampleIssue(input?: SkipOnboardingSampleIssueInput): Promise; continueWithFree(input?: ContinueOnboardingWithFreeInput): Promise; completeSampleIssue(input?: CompleteOnboardingSampleIssueInput): Promise; finish(input: FinishOnboardingInput): Promise; }; organizations: { list(): Promise; get(input: GetOrganizationInput): Promise; create(input: CreateUserOrganizationInput): Promise; update(input: Omit & Partial>): Promise; }; members: { list(input?: Partial): Promise; updateRole(input: Omit & Partial>): Promise; remove(input: Omit & Partial>): Promise; invite(input: Omit & Partial>): Promise; listInvitations(input?: Partial): Promise; revokeInvitation(input: Omit & Partial>): Promise; }; teams: { list(input?: Partial): Promise; create(input: Omit & Partial>): Promise; update(input: Omit & Partial>): Promise; delete(input: Omit & Partial>): Promise; addMember(input: Omit & Partial>): Promise; removeMember(input: Omit & Partial>): Promise; listMembers(input: Omit & Partial>): Promise; }; publicKeys: { list(input?: Partial): Promise; get(input: GetKeyInput): Promise; ensureLogForwarding(input?: EnsureLogForwardingPublicKeyInput): Promise; update(input: UpdateKeyInput): Promise; deactivate(input: DeactivatePublicKeyInput): Promise; }; secretKeys: { list(input?: Partial): Promise; get(input: GetSecretKeyInput): Promise; create(input: CreateSecretKeyInput): Promise; update(input: UpdateSecretKeyInput): Promise; delete(input: DeleteSecretKeyInput): Promise; }; search: { threads(input: Pick & Partial>): Promise; messages(input: Pick & Partial>): Promise; }; projects: { list(input?: Partial): Promise; get(input: GetProjectInput): Promise; create(input: Pick & Partial): Promise; }; messages: { list(input: Pick & Partial>): Promise; append(input: AppendMessageParams): Promise; }; threads: { list(input?: Partial): Promise; get(input: GetThreadInput): Promise; getStatus(input: GetThreadStatusInput): Promise; stop(input: StopThreadInput): Promise; create(input: CreateThreadParams): Promise; update(input: UpdateThreadInput): Promise; fork(input: ForkThreadInput): Promise; setVisibility(input: SetThreadVisibilityInput): Promise; createShareLink(input: CreateThreadShareLinkInput): Promise; listShareLinks(input: ListThreadShareLinksInput): Promise; revokeShareLink(input: RevokeThreadShareLinkInput): Promise; /** * Opens a Server-Sent Events stream of the thread's live agent-run events. * Iterate the result; read `.cursor` to resume after a disconnect. */ stream(input: AgentThreadStreamParams): Promise; }; runs: { list(input?: Partial): Promise; listForThread(input: Pick & Partial>): Promise; get(input: GetRunInput): Promise; cancel(input: CancelRunInput): Promise; /** * Opens a Server-Sent Events stream of the run's agent events. Iterate the * result; read `.cursor` to resume after a disconnect. */ stream(input: AgentRunStreamParams): Promise; }; logSources: { listProviders(): Promise; list(input?: Partial): Promise; get(input: GetLogSourceInput): Promise; create(input: Omit & Partial>): Promise; update(input: UpdateLogSourceInput): Promise; delete(input: DeleteLogSourceInput): Promise; }; logStreams: { list(input: ListLogStreamsInput): Promise; get(input: GetLogStreamInput): Promise; create(input: CreateLogStreamInput): Promise; update(input: UpdateLogStreamInput): Promise; delete(input: DeleteLogStreamInput): Promise; reassign(input: ReassignLogStreamInput): Promise; }; connectedAccounts: { beginConnect(input: BeginConnectedAccountConnectInput): Promise; getConnectAttempt(input: GetConnectedAccountConnectAttemptInput): Promise; list(input?: Partial): Promise; disconnect(input: DisconnectConnectedAccountInput): Promise; }; integrations: { listProviders(input?: Partial): Promise; listConnections(input?: Partial): Promise; getConnection(input: GetIntegrationConnectionInput): Promise; createConnection(input: CreateIntegrationConnectionInput): Promise; beginConnect(input: BeginIntegrationConnectInput): Promise; getConnectAttempt(input: GetIntegrationConnectAttemptInput): Promise; disconnectConnection(input: DisconnectIntegrationConnectionInput): Promise; updateConnectionCredentials(input: UpdateIntegrationConnectionCredentialsInput): Promise; createSlackChannel(input: CreateSlackChannelInput): Promise; }; mcpConnectors: { list(input?: Partial): Promise; get(input: Omit & Partial>): Promise; details(input: Omit & Partial>): Promise; listProviders(): Promise; search(input?: Partial): Promise; describe(input: Omit & Partial>): Promise; call(input: Omit & Partial>): Promise; create(input: Omit & Partial>): Promise; update(input: Omit & Partial>): Promise; disconnect(input: Omit & Partial>): Promise; setReadOnly(input: Omit & Partial>): Promise; beginOAuthInstall(input: Omit & Partial>): Promise; getOAuthInstallAttempt(input: Omit & Partial>): Promise; }; sandboxEnvironmentVariables: { delete(input: Omit & Partial>): Promise; get(input: Omit & Partial>): Promise; list(input?: Partial): Promise; upsert(input: Omit & Partial>): Promise; }; sandboxClis: { delete(input: Omit & Partial>): Promise; listConnections(input?: Partial): Promise; listTypes(): Promise; test(input: Omit & Partial>): Promise; upsert(input: Omit & Partial>): Promise; }; signalDefinitions: { list(input?: Partial): Promise; get(input: GetSignalDefinitionInput): Promise; create(input: CreateSignalDefinitionInput): Promise; update(input: UpdateSignalDefinitionInput): Promise; disable(input: DisableSignalDefinitionInput): Promise; }; scripts: { list(input?: Partial): Promise; get(input: GetProjectScriptInput): Promise; create(input: CreateProjectScriptInput): Promise; update(input: UpdateProjectScriptInput): Promise; delete(input: DeleteProjectScriptInput): Promise; }; memory: { list(input?: Partial> & { kind?: string; }): Promise; get(input: GetProjectMemoryInput): Promise; put(input: PutProjectMemoryInput): Promise; search(input: Omit & { kind?: string; limit?: number; }): Promise; delete(input: DeleteProjectMemoryInput): Promise; }; supportTickets: { create(input: Omit & Partial>): Promise; availability(): Promise; }; issues: { count(input?: Partial): Promise; create(input: Omit & Partial>): Promise; list(input?: Partial): Promise; search(input?: Partial): Promise; get(input: GetIssueInput): Promise; resolve(input: ResolveIssueInput): Promise; ignore(input: IgnoreIssueInput): Promise; reopen(input: ReopenIssueInput): Promise; mute(input: MuteIssueInput): Promise; unmute(input: UnmuteIssueInput): Promise; }; /** * @deprecated Work items renamed to tasks (ENG-6687). Use * {@link PublicSdkClient.tasks} `create`/`comment`/`transition` instead; * removed in v2.0 (2027-03-01). */ workItems: { /** @deprecated Use `tasks.create`; removed in v2.0 (2027-03-01). */ create(input: Partial & Pick): Promise; /** @deprecated Use `tasks.comment`; removed in v2.0 (2027-03-01). */ comment(input: CommentOnWorkItemInput): Promise; /** @deprecated Use `tasks.transition`; removed in v2.0 (2027-03-01). */ transition(input: TransitionWorkItemInput): Promise; }; pullRequests: { list(input?: Partial): Promise; }; components: { list(input?: Partial): Promise; get(input: GetComponentInput): Promise; register(input: Omit & Partial>): Promise; deregister(input: DeregisterComponentInput): Promise; rename(input: RenameComponentInput): Promise; assignTeam(input: AssignComponentTeamInput): Promise; reactivationPreview(input: PreviewComponentReactivationInput): Promise; reactivate(input: CommitComponentReactivationInput): Promise; mergePreview(input: Omit & Partial>): Promise; merge(input: Omit & Partial>): Promise; relationships: { list(input?: Partial): Promise; preview(input: Omit & Partial>): Promise; add(input: Omit & Partial>): Promise; remove(input: Omit & Partial>): Promise; }; incidents: { list(input?: Partial): Promise; }; timeline(input: GetStatusTimelineInput): Promise; }; billing: { getSummary(input?: Partial): Promise; getUsage(input?: Partial): Promise; getAccruedUsageCharges(input?: Partial): Promise; listUsageInvoices(input?: Partial): Promise; listTransactions(input?: Partial): Promise; previewSubscriptionCancellation(input?: Partial): Promise; scheduleSubscriptionCancellation(input?: Partial): Promise; resumeSubscriptionCancellation(input?: Partial): Promise; getAutoTopUp(input?: Partial): Promise; updateAutoTopUp(input: Omit & Partial>): Promise; purchaseCredits(input: Omit & Partial>): Promise; listPlans(input?: Partial): Promise; previewPlanChange(input: Omit & Partial>): Promise; changePlan(input: Omit & Partial>): Promise; createCheckoutSession(input: Omit & Partial>): Promise; getCheckoutSessionStatus(input: Omit & Partial>): Promise; createPortalSession(input?: Partial): Promise; getPaymentMethod(input?: Partial): Promise; }; tasks: { /** Onboarding task-checklist listing (not tracker tasks). */ list(input?: Partial): Promise; /** Org-wide skip for an optional onboarding task (not tracker tasks). */ skip(input: SkipTaskInput): Promise; /** Reopen a skipped onboarding task (not tracker tasks). */ unskip(input: UnskipTaskInput): Promise; create(input: Partial & Pick): Promise; comment(input: CommentOnTaskInput): Promise; transition(input: TransitionTaskInput): Promise; }; recommendations: { list(input?: Partial): Promise; }; repos: { list(input?: Partial): Promise; add(input: Omit & Partial>): Promise; remove(input: Omit & Partial>): Promise; }; notificationDeliveryRules: { list(input?: Partial): Promise; options(input?: Partial): Promise; create(input: CreateDeliveryRuleInput): Promise; update(input: UpdateDeliveryRuleInput): Promise; delete(input: DeleteDeliveryRuleInput): Promise; }; notificationChannels: { getProject(input?: Partial): Promise; }; webhooks: { list(input?: Partial): Promise; get(input: GetWebhookInput): Promise; create(input: CreateWebhookInput): Promise; update(input: UpdateWebhookInput): Promise; delete(input: DeleteWebhookInput): Promise; rotateSecret(input: RotateWebhookSecretInput): Promise; enable(input: EnableWebhookInput): Promise; test(input: TestWebhookInput): Promise; subscribe(input: SubscribeWebhookInput): Promise; unsubscribe(input: UnsubscribeWebhookInput): Promise; listDeliveries(input: ListWebhookDeliveriesInput): Promise; }; } /** * Deferred handle returned by async thread-creation operations. */ export interface DeferredHandle { result: RunResult; poll(): Promise; waitForCompletion(options?: WaitForCompletionOptions): Promise; } /** * Creates a public API SDK client backed by oRPC's OpenAPI link. */ export declare const createClient: (options: CreateClientOptions) => PublicSdkClient; /** * Starts a Better Auth device authorization flow. */ export declare const startDeviceAuthorization: (options?: StartDeviceAuthorizationOptions) => Promise; /** * Polls a Better Auth device authorization flow for completion. */ export declare const pollDeviceAuthorization: (options: PollDeviceAuthorizationOptions) => Promise;