@neta-art/cohub 8.12.1 → 8.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -234,8 +234,10 @@ provides short-lived access tokens — no API keys required.
234
234
  These runtime-only APIs are available **exclusively inside a published App**:
235
235
 
236
236
  - `client.context()` — returns App identity, App home Space identity, the current
237
- viewer, permissions, and optional invocation identifiers. The hosting Space
238
- for a new chat background is available as `context.invocation.spaceId`.
237
+ viewer, permissions, optional invocation identifiers, and the current shell
238
+ location (`context.shell`). A new chat background has `shell.surface:
239
+ "background"` with the hosting Space in `shell.space` (`session` / `turn` are
240
+ null); `invocation.spaceId` is the same Space for compatibility.
239
241
  Returns `null` outside an App runtime. `client.app.onContextChanged()` pushes
240
242
  fresh state.
241
243
  - `client.auth.request({ scopes, reason, spaceId?, alwaysAsk? })` — ensures
@@ -261,9 +263,9 @@ const ctx = await client.context();
261
263
  if (!ctx?.space?.id) throw new Error("Not inside a published app.");
262
264
 
263
265
  const sourceSessionId = ctx.invocation?.sessionId ?? null;
264
- // `app.homeSpace` is the App's owning Space. For a new chat background,
265
- // `invocation.spaceId` is the Space currently hosting the App.
266
- const spaceId = ctx.invocation?.spaceId ?? ctx.app.homeSpace?.id ?? ctx.space.id;
266
+ // `shell.space` is the current Cohub location. `app.homeSpace` is the App's
267
+ // owning Space. A new chat background also has `invocation.spaceId`.
268
+ const spaceId = ctx.shell?.space?.id ?? ctx.invocation?.spaceId ?? ctx.app.homeSpace?.id ?? ctx.space.id;
267
269
  const space = client.space(spaceId);
268
270
 
269
271
  // Request viewer grants from a user gesture (button click)
@@ -536,7 +536,7 @@ type ChannelHealth = {
536
536
  meta?: Record<string, string> | null;
537
537
  };
538
538
  //#endregion
539
- //#region ../../node_modules/.pnpm/@neta-art+generation@0.1.26/node_modules/@neta-art/generation/dist/builtins-jIE_k69Z.d.ts
539
+ //#region ../../node_modules/.pnpm/@neta-art+generation@0.1.27/node_modules/@neta-art/generation/dist/builtins-jIE_k69Z.d.ts
540
540
  //#region src/types.d.ts
541
541
  declare const MODEL_SCHEMA: "neta.generation.model.v1";
542
542
  declare const GENERATION_MODEL_CATEGORIES: readonly ["image", "video", "audio"];
@@ -5220,6 +5220,12 @@ declare const isTerminalDesktopCommandStatus: (status: DesktopCommandStatus) =>
5220
5220
  * and input hit-testing via `inputRegion`. Stays below system UI.
5221
5221
  */
5222
5222
  type DesktopSurface = "window" | "overlay";
5223
+ /**
5224
+ * The surface a desktop open should use: an explicit request wins, then
5225
+ * whatever the App declared at publish time. `window` is the implicit
5226
+ * default and yields `undefined` so the command stays compact.
5227
+ */
5228
+ declare function resolveOpenSurface(requested: unknown, declared: unknown): DesktopSurface | undefined;
5223
5229
  type DesktopAppTarget = {
5224
5230
  kind: "app";
5225
5231
  appId: string;
@@ -7319,8 +7325,15 @@ type SpaceModListItem = {
7319
7325
  * Kept as a runtime constant so hosts can validate untrusted scopes from
7320
7326
  * app iframes — TypeScript unions cannot constrain cross-window messages.
7321
7327
  */
7322
- declare const PERMISSIONS: readonly ["space.view", "space.edit", "space.create", "space.label.view", "space.label.manage", "space.label.assign", "session.view", "session.edit", "session.prompt.readonly", "session.prompt.fullaccess", "generation.create", "file.view", "file.view.filtered", "file.edit", "checkpoint.view", "checkpoint.edit", "member.view", "member.manage", "references.view", "channel.view", "channel.manage", "cronjob.view", "cronjob.manage", "taskrun.view", "command.execute", "sandbox.view", "sandbox.manage", "mod.view", "mod.manage", "space.commerce.view", "space.commerce.manage", "user.space.list", "user.session.list", "user.taskrun.list", "user.usage.read"];
7328
+ declare const PERMISSIONS: readonly ["space.view", "space.edit", "space.create", "space.label.view", "space.label.manage", "space.label.assign", "session.view", "session.edit", "session.prompt.readonly", "session.prompt.fullaccess", "session.access.manage", "generation.create", "file.view", "file.view.filtered", "file.edit", "checkpoint.view", "checkpoint.edit", "member.view", "member.manage", "references.view", "channel.view", "channel.manage", "cronjob.view", "cronjob.manage", "taskrun.view", "command.execute", "sandbox.view", "sandbox.manage", "mod.view", "mod.manage", "space.commerce.view", "space.commerce.manage", "user.space.list", "user.session.list", "user.taskrun.list", "user.usage.read"];
7323
7329
  type Permission = (typeof PERMISSIONS)[number];
7330
+ /**
7331
+ * Account-level permissions, not bound to a specific Space. Mirrored from
7332
+ * `@cohub/core` alongside {@link PERMISSIONS}. A request whose scopes are all
7333
+ * account-level needs no target Space and must not open a Space picker.
7334
+ */
7335
+ declare const USER_LEVEL_PERMISSIONS: Set<"channel.manage" | "channel.view" | "checkpoint.edit" | "checkpoint.view" | "command.execute" | "cronjob.manage" | "cronjob.view" | "file.edit" | "file.view" | "file.view.filtered" | "generation.create" | "member.manage" | "member.view" | "mod.manage" | "mod.view" | "references.view" | "sandbox.manage" | "sandbox.view" | "session.access.manage" | "session.edit" | "session.prompt.fullaccess" | "session.prompt.readonly" | "session.view" | "space.commerce.manage" | "space.commerce.view" | "space.create" | "space.edit" | "space.label.assign" | "space.label.manage" | "space.label.view" | "space.view" | "taskrun.view" | "user.session.list" | "user.space.list" | "user.taskrun.list" | "user.usage.read">;
7336
+ declare const isUserLevelPermission: (permission: Permission) => boolean;
7324
7337
  /** Implication-aware membership check, mirroring `@cohub/core`. */
7325
7338
  declare function scopeListHasPermission(scopes: readonly Permission[], permission: Permission): boolean;
7326
7339
  type SpaceAccess = {
@@ -7630,4 +7643,4 @@ declare const resolveVoiceInputWebsocketUrl: (options?: {
7630
7643
  env?: CohubEnvironment;
7631
7644
  }) => string;
7632
7645
  //#endregion
7633
- export { CheckpointDiffFile as $, BoardAnimationTarget as $a, isDesktopCallMethod as $i, SpaceCommerceProductCreditBenefit as $n, SpaceCompletionResult as $o, SpaceUsageResponse as $r, PublicReferral as $t, BillingCreditGrantStatus as A, BoardSummary as Aa, AppArtifactManifest as Ai, SessionTurnWindowResponse as An, ChannelConfig as Ao, SpaceFsWriteFileInput as Ar, LabelAssignmentListItem as At, BillingProductCreditBenefit as B, BoardAuthoringSnapshot as Ba, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as Bi, SpaceBootstrapMeta as Bn, SessionTurnIndexItem as Bo, SpacePresenceSnapshot as Br, MeResponse as Bt, BillingCatalog as C, BoardManifest as Ca, RealtimeRoomDescriptor as Ci, SessionMessagesPaginatedResponse as Cn, getAllowedGenerationModelIds as Co, SpaceFsUploadDestination as Cr, GlobalSearchResult as Ct, BillingCheckoutResult as D, BoardPlaybackPolicySchema as Da, SessionTurnPatchEvent as Di, SessionTurnResponse as Dn, GenerationContentBlock as Do, SpaceFsUploadPlanEntryInput as Dr, JsonObject as Dt, BillingCheckoutConfirmation as E, BoardPlaybackPolicy as Ea, RealtimeServerEvent as Ei, SessionTurnIndexResponse as En, BillingPayload as Eo, SpaceFsUploadPlanEntry as Er, InvitationDetail as Et, BillingDiscountPricing as F, BoardValidationResult as Fa, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as Fi, SpaceAccess as Fn, FeishuChannelConfig as Fo, SpaceMember as Fr, LabelListItem as Ft, BillingPromotionCodePreview as G, BoardSemanticMutation as Ga, DesktopCommandDispatchedPayload as Gi, SpaceCheckpointDetailResponse as Gn, TurnIntermediateMessagesFile as Go, SpaceSandboxAutoDestroyPolicy as Gr, PaletteOverviewSpace as Gt, BillingProductKind as H, BoardItemPatchSchema as Ha, DesktopAppTarget as Hi, SpaceBootstrapStage as Hn, SpaceTurnsResponse$1 as Ho, SpacePublicProfile as Hr, PERMISSIONS as Ht, BillingHistoryPagination as I, parseBoardPlaybackPolicy as Ia, DESKTOP_COMMAND_MAX_TIMEOUT_MS as Ii, SpaceAccessPolicy as In, MessageRecord as Io, SpaceMeta as Ir, LabelRecord as It, BillingSubscriptionHistoryList as J, BoardEffectInput as Ja, DesktopCommandStatus as Ji, SpaceCommerceCreditsBenefit as Jn, CompletionMessageRole as Jo, SpaceSessionsResponse as Jr, PatchResourceLabelsResponse as Jt, BillingRedemptionResult as K, BoardAssetRef as Ka, DesktopCommandError as Ki, SpaceCommerceBenefit as Kn, CompletionAssistantMessage as Ko, SpaceSandboxConfig as Kr, PaletteOverviewSpaceRelation as Kt, BillingPaymentStatus as L, BoardAuthoringItem as La, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as Li, SpaceActivityAppRanking as Ln, SessionForkRecord as Lo, SpaceModListItem as Lr, LabelResourceType as Lt, BillingCreditUnit as M, BoardTransactionRecord as Ma, AppBoardArtifactManifest as Mi, SkillCatalogEntry as Mn, ChannelHealthReasonCode as Mo, SpaceInvitationListResponse as Mr, LabelAssignmentRecord as Mt, BillingDiscountOffer as N, BoardTransactionsPage as Na, AppBoardAsset as Ni, SkillCatalogResponse as Nn, ChannelRuntimeState as No, SpaceInvitationLocation as Nr, LabelItemsResponse as Nt, BillingConversionIntent as O, BoardPlaybackSnapshot as Oa, AppArtifactDescriptor as Oi, SessionTurnSignedUrlsResponse as On, GenerationModelDeclaration as Oo, SpaceFsUploadProgress as Or, JsonPrimitive as Ot, BillingDiscountOfferRef as P, BoardTransactionsReadInput as Pa, AppContentKind as Pi, SkillCatalogSource as Pn, DiscordChannelConfig as Po, SpaceListItem as Pr, LabelItemsSessionFork as Pt, CheckpointDiffDelivery as Q, BOARD_ANIMATION_CHANNEL_CAPABILITIES as Qa, DesktopTarget as Qi, SpaceCommerceProductBenefitBinding as Qn, ModelThinkingLevel as Qo, SpaceUsageHourlyStat as Qr, PromptTemplateCatalogResponse as Qt, BillingPluginStatus as R, BoardAuthoringItemSchema as Ra, DESKTOP_COMMAND_PENDING_TTL_SECONDS as Ri, SpaceActivityContributor as Rn, SessionTurnSegmentRecord as Ro, SpacePendingDiffFileResponse as Rr, LabelScopeType as Rt, BillingBalanceActivityStatus as S, BoardDiagnostic as Sa, RealtimeRoom as Si, SessionMessageResponse as Sn, findGenerationModelPolicy as So, SpaceFsTreeResponse as Sr, GlobalSearchResponse as St, BillingCheckoutActionState as T, BoardPlaybackCommand as Ta, RealtimeRoomMember as Ti, SessionRecord as Tn, parseGenerationPolicyFromEnv as To, SpaceFsUploadError as Tr, GlobalSearchViewerRelation as Tt, BillingProductPricing as U, BoardSemanticCommand as Ua, DesktopCall as Ui, SpaceBootstrapStatus as Un, StoredIntermediateMessage as Uo, SpaceRecord as Ur, PaletteOverviewResponse as Ut, BillingProductDisplay as V, BoardItemPatch as Va, DESKTOP_COMMAND_VERSION as Vi, SpaceBootstrapSource as Vn, SessionTurnRecord as Vo, SpacePresenceUser as Vr, ModelCatalogEntry as Vt, BillingProductPromotion as W, BoardSemanticCommandSchema as Wa, DesktopCommand as Wi, SpaceChannelBindingInput as Wn, StoredToolCall as Wo, SpaceRole as Wr, PaletteOverviewSession as Wt, BillingSubscriptionSummary as X, BoardEffectSchema as Xa, DesktopOpenCommand as Xi, SpaceCommerceOrder as Xn, CompletionUsage as Xo, SpaceTurnListItem as Xr, PromptAccessMode as Xt, BillingSubscriptionHistoryStatus as Y, BoardEffectInputSchema as Ya, DesktopFileTarget as Yi, SpaceCommerceFeatureBenefit as Yn, CompletionThinkingLevel as Yo, SpaceTurnAuthorFilter as Yr, Permission as Yt, Channel as Z, parseBoardEffectInput as Za, DesktopSurface as Zi, SpaceCommerceProduct as Zn, CreateSpaceCompletionInput as Zo, SpaceTurnsResponse as Zr, PromptTemplateCatalogEntry as Zt, ApiError as _, BoardCameraFocus as _a, ChannelEnvelope as _i, ReferralStatus as _n, GenerationPolicyError as _o, SpaceFsMoveInput as _r, resolveRequestSourceChannel as _s, CronJobUpdatePatch as _t, CohubRuntimeKind as a, BoardAwarenessGesture as aa, UserActivityRankings as ai, ReferenceAggregateGroup as an, BoardProceduralClip as ao, SpaceDefaultResponse as ar, REQUEST_SOURCE_VIA_MAX_LENGTH as as, CheckpointDiffSummary as at, BillingBalanceActivityKind as b, BoardCapabilities as ba, RealtimeAppVersionRecord as bi, SendMessageCronJobPayload as bn, encodeGenerationPolicy as bo, SpaceFsReadFilesInput as br, GenerationUsageHourlyStat as bt, normalizeVoiceInputWebsocketUrl as c, BoardAwarenessUpdate as ca, UserRulesResponse as ci, ReferenceDirection as cn, BoardTrack as co, SpaceFsCompleteUploadResponse as cr, hasRequestSourceIdentity as cs, CreateInvitationInput as ct, resolveCohubEnvironment as d, BoardColorId as da, UserSessionsResponse as di, ReferenceQueryableType as dn, BoardCapability as do, SpaceFsCreateUploadResponse as dr, isRequestSourceUuid as ds, CreateSpaceModInput as dt, isTerminalDesktopCommandStatus as ea, SpaceUsageSummary as ei, PublicUserAppItem as en, BoardComposition as eo, SpaceConfig as er, SpaceCompletionStreamEvent as es, CheckpointDiffFileResponse as et, resolveExecutionAppId as f, BoardGeoKind as fa, scopeListHasPermission as fi, ReferenceRecord as fn, BoardCoordinateSpace as fo, SpaceFsDeleteNodeInput as fr, mergeRequestSourceIntoMeta as fs, CreateSpacePromptInput as ft, AcceptInvitationResponse as g, BoardDealParamsSchema as ga, BoardPlaybackChangedEvent as gi, ReferralReward as gn, GenerationPolicy as go, SpaceFsFileResponse as gr, requestSourceToHeaders as gs, CronJobRecord as gt, resolveWebsocketUrl as h, BoardDealParams as ha, BoardChangedEvent as hi, ReferralListItem as hn, GenerationParameterConstraint as ho, SpaceFsFileKind as hr, readRequestSourceFromEnv as hs, CronJobPayload as ht, CohubExecutionContext as i, SpacePublicEndpoints as ia, UserActivityRange as ii, PublicUserWorkItem as in, BoardEasing as io, SpaceCreateResponse as ir, COHUB_SOURCE_HEADER_NAMES as is, CheckpointDiffStatus as it, BillingCreditStatus as j, BoardTransactionOperation as ja, AppArtifactManifestFile as ji, SessionTurnsPaginatedResponse as jn, ChannelHealth as jo, SpaceInvitation as jr, LabelAssignmentPageInfo as jt, BillingCreditExpiryGroup as k, BoardRecord as ka, AppArtifactDownloadDescriptor as ki, SessionTurnStreamSnapshotResponse as kn, GenerationResult as ko, SpaceFsUploadResponse as kr, JsonValue as kt, normalizeWebsocketUrl as l, BOARD_COLOR_IDS as la, UserSessionListItem as li, ReferenceKind as ln, BoardTrackInterpolation as lo, SpaceFsCreateDirectoryInput as lr, isRequestSourceClientId as ls, CreateInvitationResponse as lt, resolveVoiceInputWebsocketUrl as m, BoardAnimationSpecSchema as ma, BoardAwarenessUpdatedEvent as mi, ReferralDashboard as mn, GenerationModelPolicy as mo, SpaceFsEntry as mr, parseRequestSourceFromHeaders as ms, CreateSpaceSessionInput as mt, CohubContext as n, NavigationCall as na, TaskRunRecord as ni, PublicUserProfile as nn, BoardCompositionPlayback as no, SpaceConfigResponse as nr, ContentBlock as ns, CheckpointDiffPatchLine as nt, getCohubContext as o, BoardAwarenessNodePreview as oa, UserActivityResponse as oi, ReferenceAggregateGroupBy as on, BoardTimeline as oo, SpaceEnvInput as or, RequestSource as os, CheckpointRecord as ot, resolveExecutionToken as p, BoardAnimationSpec as pa, AppVersionPublishedEvent as pi, ReferenceResourceType as pn, BoardRenderCost as po, SpaceFsEncoding as pr, normalizeRequestSource as ps, CreateSpacePromptResponse as pt, BillingResponsePayload as q, BoardEffect as qa, DesktopCommandRecord as qi, SpaceCommerceBuyerProfile as qn, CompletionMessage as qo, SpaceSandboxProvider as qr, PatchResourceLabelsInput as qt, CohubEnvironment as r, NavigationLaunch as ra, UserActivityQuery as ri, PublicUserSpaceItem as rn, BoardCompositionSchema as ro, SpaceConfigUpdateResponse as rr, COHUB_SOURCE_HEADER as rs, CheckpointDiffStats as rt, normalizeBaseUrl as s, BoardAwarenessStateUpdate as sa, UserProfile as si, ReferenceAggregateResponse as sn, BoardTimelineMarker as so, SpaceFsCompleteUploadInput as sr, RequestSourceVia as ss, ClaimReferralResponse as st, COHUB_ENVIRONMENTS as t, parseDesktopCommand as ta, TaskRunDetailResponse as ti, PublicUserPageResponse as tn, BoardCompositionInputSchema as to, SpaceConfigInput as tr, Usage as ts, CheckpointDiffPatchKind as tt, resolveApiBaseUrl as u, BOARD_GEO_KINDS as ua, UserSessionSpaceSummary as ui, ReferenceQueryResponse as un, parseBoardCompositionInput as uo, SpaceFsCreateUploadInput as ur, isRequestSourceEmpty as us, CreateSpaceInput as ut, BatchUserProfilesResponse as v, BoardCameraFocusParams as va, LabelAssignmentsUpdatedEvent as vi, ResourceLabelsResponse as vn, assertGenerationRequestAllowedByPolicy as vo, SpaceFsPreparingFile as vr, CursorPageInfo as vt, BillingCatalogProduct as w, BoardMutationReceipt as wa, RealtimeRoomEvent as wi, SessionMessagesResponse as wn, normalizeGenerationPolicy as wo, SpaceFsUploadEntry as wr, GlobalSearchType as wt, BillingBalanceActivityList as x, BoardCreateInput as xa, RealtimePatchOperation as xi, SessionBindingRecord as xn, filterGenerationDeclarationsByPolicy as xo, SpaceFsReadFilesResponse as xr, GenerationUsageSummary as xt, BillingBalanceActivity as y, BoardCameraState as ya, RealtimeAppRecord as yi, SandboxSpecId as yn, decodeGenerationPolicy as yo, SpaceFsReadFilesError as yr, GenerationUsageBlock as yt, BillingProductBillingInterval as z, BoardAuthoringReadInput as za, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as zi, SpaceActivityResponse as zn, MessageToolCallsFile as zo, SpacePendingDiffSummary as zr, LabelSource as zt };
7646
+ export { CheckpointDiffFile as $, BoardEffectSchema as $a, DesktopSurface as $i, SpaceCommerceProductCreditBenefit as $n, CompletionUsage as $o, SpaceUsageResponse as $r, PublicReferral as $t, BillingCreditGrantStatus as A, BoardPlaybackPolicySchema as Aa, AppArtifactDescriptor as Ai, SessionTurnWindowResponse as An, GenerationContentBlock as Ao, SpaceFsWriteFileInput as Ar, LabelAssignmentListItem as At, BillingProductCreditBenefit as B, BoardAuthoringItem as Ba, DESKTOP_COMMAND_PENDING_TTL_SECONDS as Bi, SpaceBootstrapMeta as Bn, SessionForkRecord as Bo, SpacePresenceSnapshot as Br, MeResponse as Bt, BillingCatalog as C, BoardCapabilities as Ca, RealtimePatchOperation as Ci, SessionMessagesPaginatedResponse as Cn, encodeGenerationPolicy as Co, SpaceFsUploadDestination as Cr, GlobalSearchResult as Ct, BillingCheckoutResult as D, BoardMutationReceipt as Da, RealtimeRoomMember as Di, SessionTurnResponse as Dn, normalizeGenerationPolicy as Do, SpaceFsUploadPlanEntryInput as Dr, JsonObject as Dt, BillingCheckoutConfirmation as E, BoardManifest as Ea, RealtimeRoomEvent as Ei, SessionTurnIndexResponse as En, getAllowedGenerationModelIds as Eo, SpaceFsUploadPlanEntry as Er, InvitationDetail as Et, BillingDiscountPricing as F, BoardTransactionRecord as Fa, AppBoardAsset as Fi, SpaceAccess as Fn, ChannelHealthReasonCode as Fo, SpaceMember as Fr, LabelListItem as Ft, BillingPromotionCodePreview as G, BoardItemPatchSchema as Ga, DesktopCall as Gi, SpaceCheckpointDetailResponse as Gn, SpaceTurnsResponse$1 as Go, SpaceSandboxAutoDestroyPolicy as Gr, PaletteOverviewSpace as Gt, BillingProductKind as H, BoardAuthoringReadInput as Ha, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as Hi, SpaceBootstrapStage as Hn, MessageToolCallsFile as Ho, SpacePublicProfile as Hr, PERMISSIONS as Ht, BillingHistoryPagination as I, BoardTransactionsPage as Ia, AppContentKind as Ii, SpaceAccessPolicy as In, ChannelRuntimeState as Io, SpaceMeta as Ir, LabelRecord as It, BillingSubscriptionHistoryList as J, BoardSemanticMutation as Ja, DesktopCommandError as Ji, SpaceCommerceCreditsBenefit as Jn, TurnIntermediateMessagesFile as Jo, SpaceSessionsResponse as Jr, PatchResourceLabelsResponse as Jt, BillingRedemptionResult as K, BoardSemanticCommand as Ka, DesktopCommand as Ki, SpaceCommerceBenefit as Kn, StoredIntermediateMessage as Ko, SpaceSandboxConfig as Kr, PaletteOverviewSpaceRelation as Kt, BillingPaymentStatus as L, BoardTransactionsReadInput as La, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as Li, SpaceActivityAppRanking as Ln, DiscordChannelConfig as Lo, SpaceModListItem as Lr, LabelResourceType as Lt, BillingCreditUnit as M, BoardRecord as Ma, AppArtifactManifest as Mi, SkillCatalogEntry as Mn, GenerationResult as Mo, SpaceInvitationListResponse as Mr, LabelAssignmentRecord as Mt, BillingDiscountOffer as N, BoardSummary as Na, AppArtifactManifestFile as Ni, SkillCatalogResponse as Nn, ChannelConfig as No, SpaceInvitationLocation as Nr, LabelItemsResponse as Nt, BillingConversionIntent as O, BoardPlaybackCommand as Oa, RealtimeServerEvent as Oi, SessionTurnSignedUrlsResponse as On, parseGenerationPolicyFromEnv as Oo, SpaceFsUploadProgress as Or, JsonPrimitive as Ot, BillingDiscountOfferRef as P, BoardTransactionOperation as Pa, AppBoardArtifactManifest as Pi, SkillCatalogSource as Pn, ChannelHealth as Po, SpaceListItem as Pr, LabelItemsSessionFork as Pt, CheckpointDiffDelivery as Q, BoardEffectInputSchema as Qa, DesktopOpenCommand as Qi, SpaceCommerceProductBenefitBinding as Qn, CompletionThinkingLevel as Qo, SpaceUsageHourlyStat as Qr, PromptTemplateCatalogResponse as Qt, BillingPluginStatus as R, BoardValidationResult as Ra, DESKTOP_COMMAND_MAX_TIMEOUT_MS as Ri, SpaceActivityContributor as Rn, FeishuChannelConfig as Ro, SpacePendingDiffFileResponse as Rr, LabelScopeType as Rt, BillingBalanceActivityStatus as S, BoardCameraState as Sa, RealtimeAppVersionRecord as Si, SessionMessageResponse as Sn, decodeGenerationPolicy as So, SpaceFsTreeResponse as Sr, GlobalSearchResponse as St, BillingCheckoutActionState as T, BoardDiagnostic as Ta, RealtimeRoomDescriptor as Ti, SessionRecord as Tn, findGenerationModelPolicy as To, SpaceFsUploadError as Tr, GlobalSearchViewerRelation as Tt, BillingProductPricing as U, BoardAuthoringSnapshot as Ua, DESKTOP_COMMAND_VERSION as Ui, SpaceBootstrapStatus as Un, SessionTurnIndexItem as Uo, SpaceRecord as Ur, PaletteOverviewResponse as Ut, BillingProductDisplay as V, BoardAuthoringItemSchema as Va, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as Vi, SpaceBootstrapSource as Vn, SessionTurnSegmentRecord as Vo, SpacePresenceUser as Vr, ModelCatalogEntry as Vt, BillingProductPromotion as W, BoardItemPatch as Wa, DesktopAppTarget as Wi, SpaceChannelBindingInput as Wn, SessionTurnRecord as Wo, SpaceRole as Wr, PaletteOverviewSession as Wt, BillingSubscriptionSummary as X, BoardEffect as Xa, DesktopCommandStatus as Xi, SpaceCommerceOrder as Xn, CompletionMessage as Xo, SpaceTurnListItem as Xr, PromptAccessMode as Xt, BillingSubscriptionHistoryStatus as Y, BoardAssetRef as Ya, DesktopCommandRecord as Yi, SpaceCommerceFeatureBenefit as Yn, CompletionAssistantMessage as Yo, SpaceTurnAuthorFilter as Yr, Permission as Yt, Channel as Z, BoardEffectInput as Za, DesktopFileTarget as Zi, SpaceCommerceProduct as Zn, CompletionMessageRole as Zo, SpaceTurnsResponse as Zr, PromptTemplateCatalogEntry as Zt, ApiError as _, BoardAnimationSpecSchema as _a, BoardChangedEvent as _i, ReferralStatus as _n, GenerationModelPolicy as _o, SpaceFsMoveInput as _r, parseRequestSourceFromHeaders as _s, CronJobUpdatePatch as _t, CohubRuntimeKind as a, NavigationCall as aa, UserActivityRange as ai, ReferenceAggregateGroup as an, BoardCompositionPlayback as ao, SpaceDefaultResponse as ar, ContentBlock as as, CheckpointDiffSummary as at, BillingBalanceActivityKind as b, BoardCameraFocus as ba, LabelAssignmentsUpdatedEvent as bi, SendMessageCronJobPayload as bn, GenerationPolicyError as bo, SpaceFsReadFilesInput as br, resolveRequestSourceChannel as bs, GenerationUsageHourlyStat as bt, normalizeVoiceInputWebsocketUrl as c, BoardAwarenessGesture as ca, UserProfile as ci, ReferenceDirection as cn, BoardProceduralClip as co, SpaceFsCompleteUploadResponse as cr, REQUEST_SOURCE_VIA_MAX_LENGTH as cs, CreateInvitationInput as ct, resolveCohubEnvironment as d, BoardAwarenessUpdate as da, UserSessionSpaceSummary as di, ReferenceQueryableType as dn, BoardTrack as do, SpaceFsCreateUploadResponse as dr, hasRequestSourceIdentity as ds, CreateSpaceModInput as dt, DesktopTarget as ea, SpaceUsageSummary as ei, PublicUserAppItem as en, parseBoardEffectInput as eo, SpaceConfig as er, CreateSpaceCompletionInput as es, CheckpointDiffFileResponse as et, resolveExecutionAppId as f, BOARD_COLOR_IDS as fa, UserSessionsResponse as fi, ReferenceRecord as fn, BoardTrackInterpolation as fo, SpaceFsDeleteNodeInput as fr, isRequestSourceClientId as fs, CreateSpacePromptInput as ft, AcceptInvitationResponse as g, BoardAnimationSpec as ga, BoardAwarenessUpdatedEvent as gi, ReferralReward as gn, BoardRenderCost as go, SpaceFsFileResponse as gr, normalizeRequestSource as gs, CronJobRecord as gt, resolveWebsocketUrl as h, BoardGeoKind as ha, AppVersionPublishedEvent as hi, ReferralListItem as hn, BoardCoordinateSpace as ho, SpaceFsFileKind as hr, mergeRequestSourceIntoMeta as hs, CronJobPayload as ht, CohubExecutionContext as i, resolveOpenSurface as ia, UserActivityQuery as ii, PublicUserWorkItem as in, BoardCompositionInputSchema as io, SpaceCreateResponse as ir, Usage as is, CheckpointDiffStatus as it, BillingCreditStatus as j, BoardPlaybackSnapshot as ja, AppArtifactDownloadDescriptor as ji, SessionTurnsPaginatedResponse as jn, GenerationModelDeclaration as jo, SpaceInvitation as jr, LabelAssignmentPageInfo as jt, BillingCreditExpiryGroup as k, BoardPlaybackPolicy as ka, SessionTurnPatchEvent as ki, SessionTurnStreamSnapshotResponse as kn, BillingPayload as ko, SpaceFsUploadResponse as kr, JsonValue as kt, normalizeWebsocketUrl as l, BoardAwarenessNodePreview as la, UserRulesResponse as li, ReferenceKind as ln, BoardTimeline as lo, SpaceFsCreateDirectoryInput as lr, RequestSource as ls, CreateInvitationResponse as lt, resolveVoiceInputWebsocketUrl as m, BoardColorId as ma, scopeListHasPermission as mi, ReferralDashboard as mn, BoardCapability as mo, SpaceFsEntry as mr, isRequestSourceUuid as ms, CreateSpaceSessionInput as mt, CohubContext as n, isTerminalDesktopCommandStatus as na, TaskRunRecord as ni, PublicUserProfile as nn, BoardAnimationTarget as no, SpaceConfigResponse as nr, SpaceCompletionResult as ns, CheckpointDiffPatchLine as nt, getCohubContext as o, NavigationLaunch as oa, UserActivityRankings as oi, ReferenceAggregateGroupBy as on, BoardCompositionSchema as oo, SpaceEnvInput as or, COHUB_SOURCE_HEADER as os, CheckpointRecord as ot, resolveExecutionToken as p, BOARD_GEO_KINDS as pa, isUserLevelPermission as pi, ReferenceResourceType as pn, parseBoardCompositionInput as po, SpaceFsEncoding as pr, isRequestSourceEmpty as ps, CreateSpacePromptResponse as pt, BillingResponsePayload as q, BoardSemanticCommandSchema as qa, DesktopCommandDispatchedPayload as qi, SpaceCommerceBuyerProfile as qn, StoredToolCall as qo, SpaceSandboxProvider as qr, PatchResourceLabelsInput as qt, CohubEnvironment as r, parseDesktopCommand as ra, USER_LEVEL_PERMISSIONS as ri, PublicUserSpaceItem as rn, BoardComposition as ro, SpaceConfigUpdateResponse as rr, SpaceCompletionStreamEvent as rs, CheckpointDiffStats as rt, normalizeBaseUrl as s, SpacePublicEndpoints as sa, UserActivityResponse as si, ReferenceAggregateResponse as sn, BoardEasing as so, SpaceFsCompleteUploadInput as sr, COHUB_SOURCE_HEADER_NAMES as ss, ClaimReferralResponse as st, COHUB_ENVIRONMENTS as t, isDesktopCallMethod as ta, TaskRunDetailResponse as ti, PublicUserPageResponse as tn, BOARD_ANIMATION_CHANNEL_CAPABILITIES as to, SpaceConfigInput as tr, ModelThinkingLevel as ts, CheckpointDiffPatchKind as tt, resolveApiBaseUrl as u, BoardAwarenessStateUpdate as ua, UserSessionListItem as ui, ReferenceQueryResponse as un, BoardTimelineMarker as uo, SpaceFsCreateUploadInput as ur, RequestSourceVia as us, CreateSpaceInput as ut, BatchUserProfilesResponse as v, BoardDealParams as va, BoardPlaybackChangedEvent as vi, ResourceLabelsResponse as vn, GenerationParameterConstraint as vo, SpaceFsPreparingFile as vr, readRequestSourceFromEnv as vs, CursorPageInfo as vt, BillingCatalogProduct as w, BoardCreateInput as wa, RealtimeRoom as wi, SessionMessagesResponse as wn, filterGenerationDeclarationsByPolicy as wo, SpaceFsUploadEntry as wr, GlobalSearchType as wt, BillingBalanceActivityList as x, BoardCameraFocusParams as xa, RealtimeAppRecord as xi, SessionBindingRecord as xn, assertGenerationRequestAllowedByPolicy as xo, SpaceFsReadFilesResponse as xr, GenerationUsageSummary as xt, BillingBalanceActivity as y, BoardDealParamsSchema as ya, ChannelEnvelope as yi, SandboxSpecId as yn, GenerationPolicy as yo, SpaceFsReadFilesError as yr, requestSourceToHeaders as ys, GenerationUsageBlock as yt, BillingProductBillingInterval as z, parseBoardPlaybackPolicy as za, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as zi, SpaceActivityResponse as zn, MessageRecord as zo, SpacePendingDiffSummary as zr, LabelSource as zt };
@@ -15,6 +15,7 @@ const PERMISSIONS = [
15
15
  "session.edit",
16
16
  "session.prompt.readonly",
17
17
  "session.prompt.fullaccess",
18
+ "session.access.manage",
18
19
  "generation.create",
19
20
  "file.view",
20
21
  "file.view.filtered",
@@ -41,6 +42,19 @@ const PERMISSIONS = [
41
42
  "user.taskrun.list",
42
43
  "user.usage.read"
43
44
  ];
45
+ /**
46
+ * Account-level permissions, not bound to a specific Space. Mirrored from
47
+ * `@cohub/core` alongside {@link PERMISSIONS}. A request whose scopes are all
48
+ * account-level needs no target Space and must not open a Space picker.
49
+ */
50
+ const USER_LEVEL_PERMISSIONS = /* @__PURE__ */ new Set([
51
+ "user.space.list",
52
+ "user.session.list",
53
+ "user.taskrun.list",
54
+ "user.usage.read",
55
+ "space.create"
56
+ ]);
57
+ const isUserLevelPermission = (permission) => USER_LEVEL_PERMISSIONS.has(permission);
44
58
  /** A held permission that already covers the checked one. */
45
59
  const IMPLIED_PERMISSIONS = {
46
60
  "session.prompt.readonly": ["session.prompt.fullaccess"],
@@ -147,4 +161,4 @@ const resolveVoiceInputWebsocketUrl = (options = {}) => {
147
161
  return COHUB_ENVIRONMENTS[resolveCohubEnvironment(options.env)].voiceInputWebsocketUrl;
148
162
  };
149
163
  //#endregion
150
- export { normalizeWebsocketUrl as a, resolveExecutionAppId as c, resolveWebsocketUrl as d, PERMISSIONS as f, normalizeVoiceInputWebsocketUrl as i, resolveExecutionToken as l, getCohubContext as n, resolveApiBaseUrl as o, scopeListHasPermission as p, normalizeBaseUrl as r, resolveCohubEnvironment as s, COHUB_ENVIRONMENTS as t, resolveVoiceInputWebsocketUrl as u };
164
+ export { normalizeWebsocketUrl as a, resolveExecutionAppId as c, resolveWebsocketUrl as d, PERMISSIONS as f, scopeListHasPermission as h, normalizeVoiceInputWebsocketUrl as i, resolveExecutionToken as l, isUserLevelPermission as m, getCohubContext as n, resolveApiBaseUrl as o, USER_LEVEL_PERMISSIONS as p, normalizeBaseUrl as r, resolveCohubEnvironment as s, COHUB_ENVIRONMENTS as t, resolveVoiceInputWebsocketUrl as u };
@@ -1,4 +1,4 @@
1
- import { $o as SpaceCompletionResult, $r as SpaceUsageResponse, $t as PublicReferral, Aa as BoardSummary, An as SessionTurnWindowResponse, Ao as ChannelConfig, Ar as SpaceFsWriteFileInput, Ba as BoardAuthoringSnapshot, Br as SpacePresenceSnapshot, Bt as MeResponse, Cn as SessionMessagesPaginatedResponse, Di as SessionTurnPatchEvent, Dn as SessionTurnResponse, Do as GenerationContentBlock, En as SessionTurnIndexResponse, Eo as BillingPayload, Et as InvitationDetail, Fr as SpaceMember, Ft as LabelListItem, Ga as BoardSemanticMutation, Gn as SpaceCheckpointDetailResponse, Go as TurnIntermediateMessagesFile, Ho as SpaceTurnsResponse, Hr as SpacePublicProfile, In as SpaceAccessPolicy, Io as MessageRecord, Ji as DesktopCommandStatus, Jr as SpaceSessionsResponse, Jt as PatchResourceLabelsResponse, Ki as DesktopCommandError, Kn as SpaceCommerceBenefit, Lo as SessionForkRecord, Lr as SpaceModListItem, Lt as LabelResourceType, Mr as SpaceInvitationListResponse, Mt as LabelAssignmentRecord, Na as BoardTransactionsPage, Nn as SkillCatalogResponse, Nt as LabelItemsResponse, Oa as BoardPlaybackSnapshot, Oi as AppArtifactDescriptor, On as SessionTurnSignedUrlsResponse, Oo as GenerationModelDeclaration, Pa as BoardTransactionsReadInput, Pi as AppContentKind, Qn as SpaceCommerceProductBenefitBinding, Qt as PromptTemplateCatalogResponse, Rr as SpacePendingDiffFileResponse, Sn as SessionMessageResponse, Sr as SpaceFsTreeResponse, St as GlobalSearchResponse, Ta as BoardPlaybackCommand, Tn as SessionRecord, Uo as StoredIntermediateMessage, Ur as SpaceRecord, Ut as PaletteOverviewResponse, Vo as SessionTurnRecord, Vt as ModelCatalogEntry, Wi as DesktopCommand, Wr as SpaceRole, Xn as SpaceCommerceOrder, Yr as SpaceTurnAuthorFilter, Yt as Permission, Z as Channel, Zn as SpaceCommerceProduct, Zo as CreateSpaceCompletionInput, _r as SpaceFsMoveInput, _t as CronJobUpdatePatch, ar as SpaceDefaultResponse, at as CheckpointDiffSummary, ba as BoardCapabilities, ca as BoardAwarenessUpdate, ci as UserRulesResponse, cn as ReferenceDirection, cr as SpaceFsCompleteUploadResponse, ct as CreateInvitationInput, di as UserSessionsResponse, dn as ReferenceQueryableType, dr as SpaceFsCreateUploadResponse, es as SpaceCompletionStreamEvent, et as CheckpointDiffFileResponse, ft as CreateSpacePromptInput, g as AcceptInvitationResponse, gi as BoardPlaybackChangedEvent$1, gr as SpaceFsFileResponse, gt as CronJobRecord, hi as BoardChangedEvent$1, ia as SpacePublicEndpoints, ir as SpaceCreateResponse, jn as SessionTurnsPaginatedResponse, jo as ChannelHealth, kn as SessionTurnStreamSnapshotResponse, kr as SpaceFsUploadResponse, ln as ReferenceKind, lt as CreateInvitationResponse, mi as BoardAwarenessUpdatedEvent$1, mn as ReferralDashboard, mt as CreateSpaceSessionInput, na as NavigationCall, ni as TaskRunRecord, nr as SpaceConfigResponse, ns as ContentBlock, oi as UserActivityResponse, on as ReferenceAggregateGroupBy, or as SpaceEnvInput, os as RequestSource, ot as CheckpointRecord, pt as CreateSpacePromptResponse, qi as DesktopCommandRecord, qn as SpaceCommerceBuyerProfile, qt as PatchResourceLabelsInput, r as CohubEnvironment, ra as NavigationLaunch, ri as UserActivityQuery, rr as SpaceConfigUpdateResponse, si as UserProfile, sn as ReferenceAggregateResponse, sr as SpaceFsCompleteUploadInput, st as ClaimReferralResponse, ti as TaskRunDetailResponse, tn as PublicUserPageResponse, tr as SpaceConfigInput, ts as Usage, un as ReferenceQueryResponse, ur as SpaceFsCreateUploadInput, ut as CreateSpaceInput, v as BatchUserProfilesResponse, vr as SpaceFsPreparingFile, vt as CursorPageInfo, wa as BoardMutationReceipt, wn as SessionMessagesResponse, wt as GlobalSearchType, xa as BoardCreateInput, xi as RealtimePatchOperation, xr as SpaceFsReadFilesResponse, za as BoardAuthoringReadInput, zn as SpaceActivityResponse, zo as MessageToolCallsFile, zr as SpacePendingDiffSummary } from "./environment.js";
1
+ import { $r as SpaceUsageResponse, $t as PublicReferral, Ai as AppArtifactDescriptor, An as SessionTurnWindowResponse, Ao as GenerationContentBlock, Ar as SpaceFsWriteFileInput, Bo as SessionForkRecord, Br as SpacePresenceSnapshot, Bt as MeResponse, Ca as BoardCapabilities, Ci as RealtimePatchOperation, Cn as SessionMessagesPaginatedResponse, Da as BoardMutationReceipt, Dn as SessionTurnResponse, En as SessionTurnIndexResponse, Et as InvitationDetail, Fr as SpaceMember, Ft as LabelListItem, Gn as SpaceCheckpointDetailResponse, Go as SpaceTurnsResponse, Ha as BoardAuthoringReadInput, Ho as MessageToolCallsFile, Hr as SpacePublicProfile, Ia as BoardTransactionsPage, Ii as AppContentKind, In as SpaceAccessPolicy, Ja as BoardSemanticMutation, Ji as DesktopCommandError, Jo as TurnIntermediateMessagesFile, Jr as SpaceSessionsResponse, Jt as PatchResourceLabelsResponse, Ki as DesktopCommand, Kn as SpaceCommerceBenefit, Ko as StoredIntermediateMessage, La as BoardTransactionsReadInput, Lr as SpaceModListItem, Lt as LabelResourceType, Mr as SpaceInvitationListResponse, Mt as LabelAssignmentRecord, Na as BoardSummary, Nn as SkillCatalogResponse, No as ChannelConfig, Nt as LabelItemsResponse, Oa as BoardPlaybackCommand, On as SessionTurnSignedUrlsResponse, Po as ChannelHealth, Qn as SpaceCommerceProductBenefitBinding, Qt as PromptTemplateCatalogResponse, Rr as SpacePendingDiffFileResponse, Sn as SessionMessageResponse, Sr as SpaceFsTreeResponse, St as GlobalSearchResponse, Tn as SessionRecord, Ua as BoardAuthoringSnapshot, Ur as SpaceRecord, Ut as PaletteOverviewResponse, Vt as ModelCatalogEntry, Wo as SessionTurnRecord, Wr as SpaceRole, Xi as DesktopCommandStatus, Xn as SpaceCommerceOrder, Yi as DesktopCommandRecord, Yr as SpaceTurnAuthorFilter, Yt as Permission, Z as Channel, Zn as SpaceCommerceProduct, _i as BoardChangedEvent$1, _r as SpaceFsMoveInput, _t as CronJobUpdatePatch, aa as NavigationCall, ar as SpaceDefaultResponse, as as ContentBlock, at as CheckpointDiffSummary, ci as UserProfile, cn as ReferenceDirection, cr as SpaceFsCompleteUploadResponse, ct as CreateInvitationInput, da as BoardAwarenessUpdate, dn as ReferenceQueryableType, dr as SpaceFsCreateUploadResponse, es as CreateSpaceCompletionInput, et as CheckpointDiffFileResponse, fi as UserSessionsResponse, ft as CreateSpacePromptInput, g as AcceptInvitationResponse, gi as BoardAwarenessUpdatedEvent$1, gr as SpaceFsFileResponse, gt as CronJobRecord, ii as UserActivityQuery, ir as SpaceCreateResponse, is as Usage, ja as BoardPlaybackSnapshot, jn as SessionTurnsPaginatedResponse, jo as GenerationModelDeclaration, ki as SessionTurnPatchEvent, kn as SessionTurnStreamSnapshotResponse, ko as BillingPayload, kr as SpaceFsUploadResponse, li as UserRulesResponse, ln as ReferenceKind, ls as RequestSource, lt as CreateInvitationResponse, mn as ReferralDashboard, mt as CreateSpaceSessionInput, ni as TaskRunRecord, nr as SpaceConfigResponse, ns as SpaceCompletionResult, oa as NavigationLaunch, on as ReferenceAggregateGroupBy, or as SpaceEnvInput, ot as CheckpointRecord, pt as CreateSpacePromptResponse, qn as SpaceCommerceBuyerProfile, qt as PatchResourceLabelsInput, r as CohubEnvironment, rr as SpaceConfigUpdateResponse, rs as SpaceCompletionStreamEvent, sa as SpacePublicEndpoints, si as UserActivityResponse, sn as ReferenceAggregateResponse, sr as SpaceFsCompleteUploadInput, st as ClaimReferralResponse, ti as TaskRunDetailResponse, tn as PublicUserPageResponse, tr as SpaceConfigInput, un as ReferenceQueryResponse, ur as SpaceFsCreateUploadInput, ut as CreateSpaceInput, v as BatchUserProfilesResponse, vi as BoardPlaybackChangedEvent$1, vr as SpaceFsPreparingFile, vt as CursorPageInfo, wa as BoardCreateInput, wn as SessionMessagesResponse, wt as GlobalSearchType, xr as SpaceFsReadFilesResponse, zn as SpaceActivityResponse, zo as MessageRecord, zr as SpacePendingDiffSummary } from "./environment.js";
2
2
  import { a as WebsocketClientOptions, r as WebsocketClient, s as WebsocketEventPayload } from "./websocket.js";
3
3
  import { a as VoiceInputCreateOptions } from "./voice-input.js";
4
4
  //#region ../protocol/dist/model/status.d.ts
@@ -161,6 +161,20 @@ type SpaceStartupResponse = {
161
161
  retryAfterMs?: number;
162
162
  };
163
163
  //#endregion
164
+ //#region ../protocol/dist/space-hooks.d.ts
165
+ /** `GET /api/spaces/:id/webhooks` item. The secret itself is never exposed. */
166
+ type SpaceWebhookListItem = {
167
+ name: string;
168
+ path: string;
169
+ action: "run" | "prompt" | "uses";
170
+ hasSecret: boolean;
171
+ };
172
+ type SpaceWebhookTriggerResponse = {
173
+ taskRunId: string;
174
+ hook: string;
175
+ eventId: string;
176
+ };
177
+ //#endregion
164
178
  //#region ../protocol/dist/public-files.d.ts
165
179
  type PublicFileUploadEntryInput = {
166
180
  id: string;
@@ -218,12 +232,16 @@ type AppRuntimeRect = {
218
232
  type AppRuntimeAnchor = "top-left" | "top-right" | "bottom-left" | "bottom-right" | "center";
219
233
  /**
220
234
  * The App asks its overlay host to change where it sits or where it accepts
221
- * pointer events. The host clamps geometry to the viewport. Absent fields keep
222
- * their current value; an axis without a size fills the layer.
235
+ * pointer events. The host clamps geometry to the viewport; an axis without a
236
+ * size fills the layer.
223
237
  *
224
238
  * `inputRegion`: `"none"` (default) makes the overlay click-through, `"all"`
225
239
  * makes it fully interactive, and a rect list limits interaction to those
226
240
  * overlay-local rectangles.
241
+ *
242
+ * `geometry` is the complete shape: a present object replaces the current one
243
+ * (absent axes fall back to the default — `{}` fills the layer), and omitting
244
+ * the field leaves the current geometry untouched.
227
245
  */
228
246
  type AppRuntimeConfigureRequest = RuntimeEnvelope & {
229
247
  type: "configure.request";
@@ -388,9 +406,18 @@ type AppRuntimeRequestOptions = {
388
406
  * resolving with the first matching response (or null on timeout).
389
407
  */
390
408
  type AppContextChangedListener = (context: AppRuntimeContext) => void;
409
+ /** A developer-facing diagnostic forwarded by the host. */
410
+ type AppDiagnostic = {
411
+ code: string;
412
+ message: string;
413
+ detail?: Record<string, unknown>;
414
+ };
415
+ type AppDiagnosticListener = (diagnostic: AppDiagnostic) => void;
391
416
  interface AppRuntimeTransport {
392
417
  request<T>(message: Record<string, unknown>, options?: AppRuntimeRequestOptions): Promise<T | null>;
393
418
  subscribeContextChanged?: (listener: AppContextChangedListener) => () => void;
419
+ /** Subscribes to host diagnostics (developer-facing, non-blocking). */
420
+ subscribeDiagnostics?: (listener: AppDiagnosticListener) => () => void;
394
421
  /** Whether this transport can address the embedding Cohub workspace. */
395
422
  supportsNavigation?: boolean;
396
423
  /** Posts a one-way message to the host; no reply is expected. */
@@ -404,8 +431,19 @@ interface AppRuntimeTransport {
404
431
  declare class ParentBridgeTransport implements AppRuntimeTransport {
405
432
  readonly supportsNavigation = true;
406
433
  private trustedParentOrigin;
434
+ private readyAnnounced;
407
435
  private contextListeners;
408
436
  private contextListener;
437
+ private diagnosticListeners;
438
+ private diagnosticListener;
439
+ /**
440
+ * Tells the host the runtime is ready once, before any subscription. Hosts
441
+ * gate unsolicited messages (context pushes, diagnostics) on this handshake,
442
+ * so the diagnostic subscription must trigger it too — an app that never
443
+ * subscribes to context still needs diagnostics to arrive.
444
+ */
445
+ private announceReady;
446
+ subscribeDiagnostics(listener: AppDiagnosticListener): () => void;
409
447
  subscribeContextChanged(listener: AppContextChangedListener): () => void;
410
448
  notify(message: Record<string, unknown>): void;
411
449
  request<T>(message: Record<string, unknown>, options?: AppRuntimeRequestOptions): Promise<T | null>;
@@ -461,6 +499,29 @@ declare class AppRuntimeApi {
461
499
  * refreshes can re-authorize (preserving viewer grants) instead of falling
462
500
  * back to a base session token that only carries app-side scopes. */
463
501
  private authorizedGrants;
502
+ /**
503
+ * Rect input regions are hover-gated by the host, which needs to know when
504
+ * the pointer leaves them. A cross-origin frame swallows those moves once
505
+ * the host makes it interactive, so while a rect region is active we report
506
+ * the pointer ourselves. `all`/`none` need no reporting: their state is
507
+ * known without it.
508
+ */
509
+ private pointerListening;
510
+ private pointerForwarding;
511
+ private pointerDown;
512
+ private pointerFrame;
513
+ private pointerPending;
514
+ /** Cleanup for the constructor's diagnostic subscription; cleared on dispose. */
515
+ private diagnosticUnsubscribe;
516
+ private readonly onPointerMove;
517
+ private readonly onPointerDown;
518
+ private readonly onPointerUp;
519
+ private readonly onPointerCancel;
520
+ /** Coalesce moves to one message per frame; presses flush immediately. */
521
+ private queuePointer;
522
+ private flushPointer;
523
+ private reportPointer;
524
+ private setPointerForwarding;
464
525
  constructor(transport?: AppRuntimeTransport, appId?: string, appIdResolver?: AppIdResolver);
465
526
  /**
466
527
  * Resolves the localStorage keys once the appId is known. When the appId is
@@ -474,6 +535,13 @@ declare class AppRuntimeApi {
474
535
  private writeStoredGrants;
475
536
  context(): Promise<AppRuntimeContext | null>;
476
537
  onContextChanged(listener: AppContextChangedListener): () => void;
538
+ /** Subscribes to developer-facing host diagnostics. */
539
+ onDiagnostic(listener: AppDiagnosticListener): () => void;
540
+ /**
541
+ * Releases listeners and any pending pointer frame this runtime registered.
542
+ * Safe to call more than once.
543
+ */
544
+ dispose(): void;
477
545
  navigationOpen(target: AppNavigationTarget, call?: AppNavigationCall): Promise<AppNavigationOpenResponse>;
478
546
  /**
479
547
  * Asks the host to close this App: a workspace tab closes, an embedded page
@@ -485,16 +553,24 @@ declare class AppRuntimeApi {
485
553
  * Requests the host to update the overlay's geometry or pointer hit regions.
486
554
  * Only meaningful when the App was opened as an `overlay` surface; the host
487
555
  * is free to clamp or ignore values that violate its layout policy.
556
+ *
557
+ * A non-empty rect `inputRegion` also starts reporting the pointer to the
558
+ * host, which is how the host learns when it leaves the region.
488
559
  */
489
560
  requestConfigure(input: Omit<AppRuntimeConfigureRequest, "protocol" | "version" | "type">): void;
490
561
  getAccessToken(options?: {
491
562
  forceRefresh?: boolean;
492
563
  }): Promise<string | null>;
493
564
  /**
494
- * Requests viewer consent. Without a `spaceId` the grant targets the app's
495
- * home space; with one it targets that space — the app may only grant what
496
- * the viewer can already do there themselves. Reuses a previous grant
497
- * silently unless `alwaysAsk` forces the consent dialog.
565
+ * Requests viewer consent. With an accessible `spaceId` the grant targets
566
+ * that Space; otherwise the host resolves a viewer-controlled Space (the
567
+ * invocation or embedding Space, then the viewer's last picked Space, then
568
+ * their first accessible one) — never the app author's home Space. The app
569
+ * may only grant what the viewer can already do there themselves. Reuses a
570
+ * previous grant silently unless `alwaysAsk` forces the consent dialog.
571
+ *
572
+ * Returns whether a token was granted; use
573
+ * {@link requestSpaceAuthorization} when the app needs to know which Space.
498
574
  */
499
575
  requestAuthorization(input: {
500
576
  scopes: Permission[];
@@ -1512,6 +1588,23 @@ declare class SpaceModsApi {
1512
1588
  sandboxRestarting: boolean;
1513
1589
  }>;
1514
1590
  }
1591
+ /**
1592
+ * Inbound webhooks declared by `.cohub/hooks/<name>.yml` with `on.event: webhook`.
1593
+ * The trigger endpoint is unauthenticated; the hook's optional `on.secret` is the credential.
1594
+ */
1595
+ declare class SpaceWebhooksApi {
1596
+ private readonly transport;
1597
+ private readonly spaceId;
1598
+ constructor(transport: HttpTransport, spaceId: string);
1599
+ list(customFetch?: Fetch): Promise<{
1600
+ items: SpaceWebhookListItem[];
1601
+ }>;
1602
+ /** Path a caller POSTs to; prefix with the API origin. */
1603
+ path(name: string): string;
1604
+ trigger(name: string, body?: unknown, options?: {
1605
+ secret?: string | null;
1606
+ }): Promise<SpaceWebhookTriggerResponse>;
1607
+ }
1515
1608
  declare class SpaceEnvApi {
1516
1609
  private readonly transport;
1517
1610
  private readonly spaceId;
@@ -1842,6 +1935,7 @@ declare class SpaceClient {
1842
1935
  readonly activity: SpaceActivityApi;
1843
1936
  readonly channels: SpaceChannelsApi;
1844
1937
  readonly mods: SpaceModsApi;
1938
+ readonly webhooks: SpaceWebhooksApi;
1845
1939
  readonly env: SpaceEnvApi;
1846
1940
  readonly sandbox: SpaceSandboxApi;
1847
1941
  readonly invitations: SpaceInvitationsApi;
@@ -2002,7 +2096,7 @@ type AppStatus = "published" | "disabled";
2002
2096
  type AppVisibility = "public" | "space";
2003
2097
  type AppPresentationMeta = {
2004
2098
  hideCohubBar?: boolean;
2005
- /** How `cohub desktop open` presents the App when `--as` is not given. */
2099
+ /** How the desktop presents the App when opened without an explicit surface. */
2006
2100
  surface?: "window" | "overlay";
2007
2101
  };
2008
2102
  /** Snapshot of fields extracted from the published page head. */
@@ -2543,4 +2637,4 @@ declare class CohubHttpClient {
2543
2637
  }
2544
2638
  declare const createHttpClient: (options?: CohubClientOptions) => CohubHttpClient;
2545
2639
  //#endregion
2546
- export { AppTargetType as $, UnauthorizedContext as $n, WebSocketConnectionState as $t, WaitForUiCommandOptions as A, CreatePublicAssetUploadInput as An, PublicFileListEntry as Ar, WorkVersionRecord as At, AppPresentationMeta as B, UploadPublicAssetInput as Bn, ListGenerationModelsResponse as Br, BoardChangedEvent as Bt, DesktopCommandsApi as C, SessionPatchState as Cn, AppNavigationOpenResponse as Cr, WorkPublicSpaceRecord as Ct, UiCommandStatus as D, ReferenceResourceSelector as Dn, AppRuntimeRect as Dr, WorkStatus as Dt, UiCommandRecord as E, SessionAccessApi as En, AppRuntimeConfigureRequest as Er, WorkSessionResponse as Et, AppCreateInput as F, PublicAssetUploadProtocol as Fn, SpaceStartupResponse as Fr, UsersApi as Ft, AppPromotionRecord as G, CronJobsApi as Gn, SessionEventName as Gt, AppPromotionEventResponse as H, PromptsApi as Hn, ModelStatusEntry as Hr, BoardEventName as Ht, AppDetailResponse as I, PublicAssetsApi as In, CreateGenerationTaskRequest as Ir, UserApi as It, AppPublicSpaceRecord as J, Fetch as Jn, SpaceClient as Jt, AppPromotionStatsResponse as K, ChannelsApi as Kn, SessionSubscriptionHandlers as Kt, AppExtractedPageMeta as L, UploadAppSourceInput as Ln, CreateGenerationTaskResponse as Lr, TaskWaitOptions as Lt, AppAuthorizeResponse as M, PublicAssetMimeType as Mn, PublicFileUploadEntryInput as Mr, WorkViewStatsResponse as Mt, AppContent as N, PublicAssetPurpose as Nn, PublicFileUploadPlanEntry as Nr, WorkVisibility as Nt, UiCommandsApi as O, ReferencesApi as On, PublicFileCreateUploadInput as Or, WorkTargetType as Ot, AppContentDownload as P, PublicAssetUploadProgress as Pn, PublicFileUrlResponse as Pr, ReferralsApi as Pt, AppStatus as Q, RawHttpResponse as Qn, SpacesApi as Qt, AppGetResponse as R, UploadChatAttachmentInput as Rn, GenerationTaskResult as Rr, TasksApi as Rt, CreateUiCommandInput as S, SessionPatchReducer as Sn, AppNavigationOpenMessage as Sr, WorkPublicOwnerRecord as St, UiCommandError as T, createSessionPatchReducer as Tn, AppRuntimeAnchor as Tr, WorkResolveResponse as Tt, AppPromotionProvider as U, ModelsApi as Un, ModelStatusResponse as Ur, BoardPlaybackChangedEvent as Ut, AppPromotionCreateInput as V, SkillsApi as Vn, PublicGenerationDeclaration as Vr, BoardClient as Vt, AppPromotionProviderStatus as W, GenerationsApi as Wn, BoardSubscriptionHandlers as Wt, AppResolveResponse as X, HttpTraceContext as Xn, SpacePublicFilesApi as Xt, AppRecord as Y, HttpError as Yn, SpaceEventName as Yt, AppSessionResponse as Z, HttpTransport as Zn, SpaceTurnListOptions as Zt, WorkCommerceEntitlementsResponse as _, SessionGenerationStreamClient as _n, createAppRuntime as _r, WorkPromotionEventResponse as _t, AppCommerceCreditConsumeResponse as a, AssistantMessageCommit as an, AppRuntimeApi as ar, AppVisibility as at, WorkCommercePurchaseResponse as b, SessionPatchApplyInput as bn, AppNavigationCall as br, WorkPromotionRecord as bt, AppCommerceEntitlementsResponse as c, GenerationStreamEvent as cn, AppRuntimeCheckoutStatus as cr, WorkContent as ct, AppCommercePurchaseResponse as d, GenerationStreamLifecycleEvent as dn, AppRuntimeModeConfig as dr, WorkDetailResponse as dt, BuildSpaceInvitePathInput as en, joinApiUrl as er, AppUpdateInput as et, WorkCommerceApi as f, GenerationStreamOutOfSyncEvent as fn, AppRuntimeRequestOptions as fr, WorkExtractedPageMeta as ft, WorkCommerceEntitlement as g, GenerationStreamTurnUpdatedEvent as gn, PopupBrokerTransport as gr, WorkPromotionCreateInput as gt, WorkCommerceCreditConsumeStatus as h, GenerationStreamSubscriptionHandlers as hn, ParentBridgeTransport as hr, WorkPresentationMeta as ht, AppCommerceCheckoutStatus as i, buildSpacePath as in, AppIdResolver as ir, AppViewerGrantRecord as it, AppActionRunResponse as j, CreatePublicAssetUploadResponse as jn, PublicFileListResponse as jr, WorkViewSource as jt, WaitForDesktopCommandOptions as k, SearchApi as kn, PublicFileCreateUploadResponse as kr, WorkUpdateInput as kt, AppCommerceOrder as l, GenerationStreamFinalizedEvent as ln, AppRuntimeContext as lr, WorkContentDownload as lt, WorkCommerceCreditConsumeResponse as m, GenerationStreamSubscribeOptions as mn, AppRuntimeTransport as mr, WorkMeta as mt, createHttpClient as n, PublicInviteApi as nn, sanitizeAccessToken as nr, AppViewSource as nt, AppCommerceCreditConsumeStatus as o, GenerationStreamCommitEvent as on, AppRuntimeAuthorizationResult as or, AppsApi as ot, WorkCommerceCheckoutStatus as p, GenerationStreamStateEvent as pn, AppRuntimeShellContext as pr, WorkGetResponse as pt, AppPublicOwnerRecord as q, CohubClientOptions as qn, SpaceChannelBindingRecord as qt, AppCommerceApi as r, buildSpaceInvitePath as rn, AppContextChangedListener as rr, AppViewStatsResponse as rt, AppCommerceEntitlement as s, GenerationStreamErrorEvent as sn, AppRuntimeCheckoutState as sr, WorkAuthorizeResponse as st, CohubHttpClient as t, BuildSpacePathInput as tn, matchesUnauthorizedErrorToken as tr, AppVersionRecord as tt, AppCommerceProductResolveResponse as u, GenerationStreamIntermediateMessage as un, AppRuntimeInvocationContext as ur, WorkCreateInput as ut, WorkCommerceOrder as v, createSessionGenerationStreamClient as vn, createSlugAppIdResolver as vr, WorkPromotionProvider as vt, UiCommand as w, SessionPatchStatus as wn, AppNavigationTarget as wr, WorkRecord as wt, CreateDesktopCommandInput as x, SessionPatchApplyResult as xn, AppNavigationLaunch as xr, WorkPromotionStatsResponse as xt, WorkCommerceProductResolveResponse as y, parseAssistantMessageCommit as yn, resolveAppTransport as yr, WorkPromotionProviderStatus as yt, AppMeta as z, UploadChatImageAttachmentInput as zn, GenerationUsageBilling as zr, BoardAwarenessUpdatedEvent as zt };
2640
+ export { AppTargetType as $, RawHttpResponse as $n, SpacesApi as $t, WaitForUiCommandOptions as A, SearchApi as An, AppRuntimeRect as Ar, WorkVersionRecord as At, AppPresentationMeta as B, UploadChatImageAttachmentInput as Bn, SpaceStartupResponse as Br, BoardChangedEvent as Bt, DesktopCommandsApi as C, SessionPatchReducer as Cn, AppNavigationCall as Cr, WorkPublicSpaceRecord as Ct, UiCommandStatus as D, SessionAccessApi as Dn, AppNavigationTarget as Dr, WorkStatus as Dt, UiCommandRecord as E, createSessionPatchReducer as En, AppNavigationOpenResponse as Er, WorkSessionResponse as Et, AppCreateInput as F, PublicAssetUploadProgress as Fn, PublicFileUploadEntryInput as Fr, UsersApi as Ft, AppPromotionRecord as G, GenerationsApi as Gn, ListGenerationModelsResponse as Gr, SessionEventName as Gt, AppPromotionEventResponse as H, SkillsApi as Hn, CreateGenerationTaskResponse as Hr, BoardEventName as Ht, AppDetailResponse as I, PublicAssetUploadProtocol as In, PublicFileUploadPlanEntry as Ir, UserApi as It, AppPublicSpaceRecord as J, CohubClientOptions as Jn, ModelStatusResponse as Jr, SpaceClient as Jt, AppPromotionStatsResponse as K, CronJobsApi as Kn, PublicGenerationDeclaration as Kr, SessionSubscriptionHandlers as Kt, AppExtractedPageMeta as L, PublicAssetsApi as Ln, PublicFileUrlResponse as Lr, TaskWaitOptions as Lt, AppAuthorizeResponse as M, CreatePublicAssetUploadResponse as Mn, PublicFileCreateUploadResponse as Mr, WorkViewStatsResponse as Mt, AppContent as N, PublicAssetMimeType as Nn, PublicFileListEntry as Nr, WorkVisibility as Nt, UiCommandsApi as O, ReferenceResourceSelector as On, AppRuntimeAnchor as Or, WorkTargetType as Ot, AppContentDownload as P, PublicAssetPurpose as Pn, PublicFileListResponse as Pr, ReferralsApi as Pt, AppStatus as Q, HttpTransport as Qn, SpaceWebhooksApi as Qt, AppGetResponse as R, UploadAppSourceInput as Rn, SpaceWebhookListItem as Rr, TasksApi as Rt, CreateUiCommandInput as S, SessionPatchApplyResult as Sn, resolveAppTransport as Sr, WorkPublicOwnerRecord as St, UiCommandError as T, SessionPatchStatus as Tn, AppNavigationOpenMessage as Tr, WorkResolveResponse as Tt, AppPromotionProvider as U, PromptsApi as Un, GenerationTaskResult as Ur, BoardPlaybackChangedEvent as Ut, AppPromotionCreateInput as V, UploadPublicAssetInput as Vn, CreateGenerationTaskRequest as Vr, BoardClient as Vt, AppPromotionProviderStatus as W, ModelsApi as Wn, GenerationUsageBilling as Wr, BoardSubscriptionHandlers as Wt, AppResolveResponse as X, HttpError as Xn, SpacePublicFilesApi as Xt, AppRecord as Y, Fetch as Yn, SpaceEventName as Yt, AppSessionResponse as Z, HttpTraceContext as Zn, SpaceTurnListOptions as Zt, WorkCommerceEntitlementsResponse as _, GenerationStreamTurnUpdatedEvent as _n, AppRuntimeTransport as _r, WorkPromotionEventResponse as _t, AppCommerceCreditConsumeResponse as a, buildSpacePath as an, AppDiagnostic as ar, AppVisibility as at, WorkCommercePurchaseResponse as b, parseAssistantMessageCommit as bn, createAppRuntime as br, WorkPromotionRecord as bt, AppCommerceEntitlementsResponse as c, GenerationStreamErrorEvent as cn, AppRuntimeApi as cr, WorkContent as ct, AppCommercePurchaseResponse as d, GenerationStreamIntermediateMessage as dn, AppRuntimeCheckoutStatus as dr, WorkDetailResponse as dt, WebSocketConnectionState as en, UnauthorizedContext as er, AppUpdateInput as et, WorkCommerceApi as f, GenerationStreamLifecycleEvent as fn, AppRuntimeContext as fr, WorkExtractedPageMeta as ft, WorkCommerceEntitlement as g, GenerationStreamSubscriptionHandlers as gn, AppRuntimeShellContext as gr, WorkPromotionCreateInput as gt, WorkCommerceCreditConsumeStatus as h, GenerationStreamSubscribeOptions as hn, AppRuntimeRequestOptions as hr, WorkPresentationMeta as ht, AppCommerceCheckoutStatus as i, buildSpaceInvitePath as in, AppContextChangedListener as ir, AppViewerGrantRecord as it, AppActionRunResponse as j, CreatePublicAssetUploadInput as jn, PublicFileCreateUploadInput as jr, WorkViewSource as jt, WaitForDesktopCommandOptions as k, ReferencesApi as kn, AppRuntimeConfigureRequest as kr, WorkUpdateInput as kt, AppCommerceOrder as l, GenerationStreamEvent as ln, AppRuntimeAuthorizationResult as lr, WorkContentDownload as lt, WorkCommerceCreditConsumeResponse as m, GenerationStreamStateEvent as mn, AppRuntimeModeConfig as mr, WorkMeta as mt, createHttpClient as n, BuildSpacePathInput as nn, matchesUnauthorizedErrorToken as nr, AppViewSource as nt, AppCommerceCreditConsumeStatus as o, AssistantMessageCommit as on, AppDiagnosticListener as or, AppsApi as ot, WorkCommerceCheckoutStatus as p, GenerationStreamOutOfSyncEvent as pn, AppRuntimeInvocationContext as pr, WorkGetResponse as pt, AppPublicOwnerRecord as q, ChannelsApi as qn, ModelStatusEntry as qr, SpaceChannelBindingRecord as qt, AppCommerceApi as r, PublicInviteApi as rn, sanitizeAccessToken as rr, AppViewStatsResponse as rt, AppCommerceEntitlement as s, GenerationStreamCommitEvent as sn, AppIdResolver as sr, WorkAuthorizeResponse as st, CohubHttpClient as t, BuildSpaceInvitePathInput as tn, joinApiUrl as tr, AppVersionRecord as tt, AppCommerceProductResolveResponse as u, GenerationStreamFinalizedEvent as un, AppRuntimeCheckoutState as ur, WorkCreateInput as ut, WorkCommerceOrder as v, SessionGenerationStreamClient as vn, ParentBridgeTransport as vr, WorkPromotionProvider as vt, UiCommand as w, SessionPatchState as wn, AppNavigationLaunch as wr, WorkRecord as wt, CreateDesktopCommandInput as x, SessionPatchApplyInput as xn, createSlugAppIdResolver as xr, WorkPromotionStatsResponse as xt, WorkCommerceProductResolveResponse as y, createSessionGenerationStreamClient as yn, PopupBrokerTransport as yr, WorkPromotionProviderStatus as yt, AppMeta as z, UploadChatAttachmentInput as zn, SpaceWebhookTriggerResponse as zr, BoardAwarenessUpdatedEvent as zt };
@@ -1316,6 +1316,9 @@ z.object({
1316
1316
  }).optional()
1317
1317
  }).strict();
1318
1318
  //#endregion
1319
+ //#region ../protocol/dist/space-hooks.js
1320
+ const SPACE_HOOK_WEBHOOK_SECRET_HEADER = "x-cohub-webhook-secret";
1321
+ //#endregion
1319
1322
  //#region ../protocol/dist/navigation.js
1320
1323
  const NAVIGATION_LAUNCH_MAX_LENGTH = 2048;
1321
1324
  const NAVIGATION_ERROR_MESSAGE_MAX_LENGTH = 2e3;
@@ -1350,6 +1353,14 @@ const DESKTOP_COMMAND_TERMINAL_STATUSES = [
1350
1353
  "timeout"
1351
1354
  ];
1352
1355
  const isTerminalDesktopCommandStatus = (status) => DESKTOP_COMMAND_TERMINAL_STATUSES.includes(status);
1356
+ /**
1357
+ * The surface a desktop open should use: an explicit request wins, then
1358
+ * whatever the App declared at publish time. `window` is the implicit
1359
+ * default and yields `undefined` so the command stays compact.
1360
+ */
1361
+ function resolveOpenSurface(requested, declared) {
1362
+ return (requested ?? declared) === "overlay" ? "overlay" : void 0;
1363
+ }
1353
1364
  const METHOD_RE = new RegExp(`^[A-Za-z][A-Za-z0-9_.:-]{0,63}$`);
1354
1365
  const isDesktopCallMethod = (value) => typeof value === "string" && METHOD_RE.test(value);
1355
1366
  const DESKTOP_COMMAND_ID_RE = /^[A-Za-z0-9_-]{1,64}$/;
@@ -3384,6 +3395,36 @@ var SpaceModsApi = class {
3384
3395
  });
3385
3396
  }
3386
3397
  };
3398
+ /**
3399
+ * Inbound webhooks declared by `.cohub/hooks/<name>.yml` with `on.event: webhook`.
3400
+ * The trigger endpoint is unauthenticated; the hook's optional `on.secret` is the credential.
3401
+ */
3402
+ var SpaceWebhooksApi = class {
3403
+ transport;
3404
+ spaceId;
3405
+ constructor(transport, spaceId) {
3406
+ this.transport = transport;
3407
+ this.spaceId = spaceId;
3408
+ }
3409
+ list(customFetch) {
3410
+ return this.transport.request(`/api/spaces/${this.spaceId}/webhooks`, { fetch: customFetch });
3411
+ }
3412
+ /** Path a caller POSTs to; prefix with the API origin. */
3413
+ path(name) {
3414
+ return `/api/spaces/${this.spaceId}/webhooks/${encodeURIComponent(name)}`;
3415
+ }
3416
+ trigger(name, body = null, options = {}) {
3417
+ return this.transport.request(this.path(name), {
3418
+ method: "POST",
3419
+ headers: {
3420
+ "Content-Type": "application/json",
3421
+ ...options.secret ? { [SPACE_HOOK_WEBHOOK_SECRET_HEADER]: options.secret } : {}
3422
+ },
3423
+ body: JSON.stringify(body ?? null),
3424
+ skipUnauthorizedHandler: true
3425
+ });
3426
+ }
3427
+ };
3387
3428
  var SpaceEnvApi = class {
3388
3429
  transport;
3389
3430
  spaceId;
@@ -3897,6 +3938,7 @@ var SpaceClient = class {
3897
3938
  activity;
3898
3939
  channels;
3899
3940
  mods;
3941
+ webhooks;
3900
3942
  env;
3901
3943
  sandbox;
3902
3944
  invitations;
@@ -3919,6 +3961,7 @@ var SpaceClient = class {
3919
3961
  this.activity = new SpaceActivityApi(transport, id);
3920
3962
  this.channels = new SpaceChannelsApi(transport, id);
3921
3963
  this.mods = new SpaceModsApi(transport, id);
3964
+ this.webhooks = new SpaceWebhooksApi(transport, id);
3922
3965
  this.env = new SpaceEnvApi(transport, id);
3923
3966
  this.sandbox = new SpaceSandboxApi(transport, id);
3924
3967
  this.invitations = new SpaceInvitationsApi(transport, id);
@@ -4671,4 +4714,4 @@ var CohubHttpClient = class {
4671
4714
  };
4672
4715
  const createHttpClient = (options) => new CohubHttpClient(options);
4673
4716
  //#endregion
4674
- export { BOARD_BUILTIN_CAPABILITIES as $, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as A, BoardSemanticMutationSchema as B, createSessionPatchReducer as C, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as D, DESKTOP_COMMAND_MAX_TIMEOUT_MS as E, parseDesktopCommandId as F, BOARD_ANIMATION_CHANNEL_CAPABILITIES as G, BoardEffectSchema as H, NAVIGATION_ERROR_MESSAGE_MAX_LENGTH as I, BoardProceduralClipSchema as J, BoardCompositionInputSchema as K, BoardAuthoringItemSchema as L, isDesktopCallMethod as M, isTerminalDesktopCommandStatus as N, DESKTOP_COMMAND_PENDING_TTL_SECONDS as O, parseDesktopCommand as P, BOARD_ARROW_STROKE_SIZE as Q, BoardItemPatchSchema as R, SessionPatchReducer as S, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as T, parseBoardEffectInput as U, BoardEffectInputSchema as V, BOARD_ANIMATION_CHANNELS as W, parseBoardCompositionInput as X, BoardTrackSchema as Y, BoardConnectionSchema as Z, buildSpaceInvitePath as _, DesktopCommandsApi as a, SearchApi as at, createSessionGenerationStreamClient as b, ReferralsApi as c, PromptsApi as ct, TasksApi as d, CronJobsApi as dt, BOARD_BUILTIN_CLIP_KINDS as et, BoardClient as f, ChannelsApi as ft, PublicInviteApi as g, SpacesApi as h, WorkCommerceApi as i, ReferencesApi as it, DESKTOP_COMMAND_VERSION as j, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as k, UsersApi as l, ModelsApi as lt, SpacePublicFilesApi as m, createHttpClient as n, DEFAULT_BOARD_RENDER_LIMITS as nt, UiCommandsApi as o, PublicAssetsApi as ot, SpaceClient as p, BoardCompositionSchema as q, AppCommerceApi as r, SessionAccessApi as rt, AppsApi as s, SkillsApi as st, CohubHttpClient as t, BOARD_BUILTIN_EFFECT_KINDS as tt, UserApi as u, GenerationsApi as ut, buildSpacePath as v, ensureRealtimeConnected as w, parseAssistantMessageCommit as x, SessionGenerationStreamClient as y, BoardSemanticCommandSchema as z };
4717
+ export { BoardConnectionSchema as $, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as A, BoardItemPatchSchema as B, SessionPatchReducer as C, DESKTOP_COMMAND_MAX_TIMEOUT_MS as D, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as E, parseDesktopCommand as F, parseBoardEffectInput as G, BoardSemanticMutationSchema as H, parseDesktopCommandId as I, BoardCompositionInputSchema as J, BOARD_ANIMATION_CHANNELS as K, resolveOpenSurface as L, DESKTOP_COMMAND_VERSION as M, isDesktopCallMethod as N, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as O, isTerminalDesktopCommandStatus as P, parseBoardCompositionInput as Q, NAVIGATION_ERROR_MESSAGE_MAX_LENGTH as R, parseAssistantMessageCommit as S, ensureRealtimeConnected as T, BoardEffectInputSchema as U, BoardSemanticCommandSchema as V, BoardEffectSchema as W, BoardProceduralClipSchema as X, BoardCompositionSchema as Y, BoardTrackSchema as Z, PublicInviteApi as _, DesktopCommandsApi as a, SessionAccessApi as at, SessionGenerationStreamClient as b, ReferralsApi as c, PublicAssetsApi as ct, TasksApi as d, ModelsApi as dt, BOARD_ARROW_STROKE_SIZE as et, BoardClient as f, GenerationsApi as ft, SpacesApi as g, SpaceWebhooksApi as h, WorkCommerceApi as i, DEFAULT_BOARD_RENDER_LIMITS as it, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as j, DESKTOP_COMMAND_PENDING_TTL_SECONDS as k, UsersApi as l, SkillsApi as lt, SpacePublicFilesApi as m, ChannelsApi as mt, createHttpClient as n, BOARD_BUILTIN_CLIP_KINDS as nt, UiCommandsApi as o, ReferencesApi as ot, SpaceClient as p, CronJobsApi as pt, BOARD_ANIMATION_CHANNEL_CAPABILITIES as q, AppCommerceApi as r, BOARD_BUILTIN_EFFECT_KINDS as rt, AppsApi as s, SearchApi as st, CohubHttpClient as t, BOARD_BUILTIN_CAPABILITIES as tt, UserApi as u, PromptsApi as ut, buildSpaceInvitePath as v, createSessionPatchReducer as w, createSessionGenerationStreamClient as x, buildSpacePath as y, BoardAuthoringItemSchema as z };
@@ -1,4 +1,4 @@
1
- import { Qo as ModelThinkingLevel, Si as RealtimeRoom, _i as ChannelEnvelope, ca as BoardAwarenessUpdate, ns as ContentBlock, q as BillingResponsePayload, r as CohubEnvironment } from "./environment.js";
1
+ import { as as ContentBlock, da as BoardAwarenessUpdate, q as BillingResponsePayload, r as CohubEnvironment, ts as ModelThinkingLevel, wi as RealtimeRoom, yi as ChannelEnvelope } from "./environment.js";
2
2
  import { z } from "zod";
3
3
  //#region src/websocket.d.ts
4
4
  type WebsocketEventPayload = ChannelEnvelope;
package/dist/http.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { $ as CheckpointDiffFile, $a as BoardAnimationTarget, $n as SpaceCommerceProductCreditBenefit, $o as SpaceCompletionResult, $r as SpaceUsageResponse, $t as PublicReferral, A as BillingCreditGrantStatus, Aa as BoardSummary, An as SessionTurnWindowResponse, Ao as ChannelConfig, Ar as SpaceFsWriteFileInput, At as LabelAssignmentListItem, B as BillingProductCreditBenefit, Ba as BoardAuthoringSnapshot, Bn as SpaceBootstrapMeta, Bo as SessionTurnIndexItem, Br as SpacePresenceSnapshot, Bt as MeResponse, C as BillingCatalog, Ca as BoardManifest, Cn as SessionMessagesPaginatedResponse, Cr as SpaceFsUploadDestination, Ct as GlobalSearchResult, D as BillingCheckoutResult, Dn as SessionTurnResponse, Do as GenerationContentBlock, Dr as SpaceFsUploadPlanEntryInput, Dt as JsonObject, E as BillingCheckoutConfirmation, Ea as BoardPlaybackPolicy, En as SessionTurnIndexResponse, Er as SpaceFsUploadPlanEntry, Et as InvitationDetail, F as BillingDiscountPricing, Fa as BoardValidationResult, Fn as SpaceAccess, Fo as FeishuChannelConfig, Fr as SpaceMember, Ft as LabelListItem, G as BillingPromotionCodePreview, Ga as BoardSemanticMutation, Gn as SpaceCheckpointDetailResponse, Go as TurnIntermediateMessagesFile, Gr as SpaceSandboxAutoDestroyPolicy, Gt as PaletteOverviewSpace, H as BillingProductKind, Hn as SpaceBootstrapStage, Hr as SpacePublicProfile, Ht as PERMISSIONS, I as BillingHistoryPagination, In as SpaceAccessPolicy, Io as MessageRecord, Ir as SpaceMeta, It as LabelRecord, J as BillingSubscriptionHistoryList, Ja as BoardEffectInput, Jn as SpaceCommerceCreditsBenefit, Jo as CompletionMessageRole, Jr as SpaceSessionsResponse, Jt as PatchResourceLabelsResponse, K as BillingRedemptionResult, Ka as BoardAssetRef, Kn as SpaceCommerceBenefit, Ko as CompletionAssistantMessage, Kr as SpaceSandboxConfig, Kt as PaletteOverviewSpaceRelation, L as BillingPaymentStatus, La as BoardAuthoringItem, Ln as SpaceActivityAppRanking, Lo as SessionForkRecord, Lr as SpaceModListItem, Lt as LabelResourceType, M as BillingCreditUnit, Ma as BoardTransactionRecord, Mn as SkillCatalogEntry, Mo as ChannelHealthReasonCode, Mr as SpaceInvitationListResponse, Mt as LabelAssignmentRecord, N as BillingDiscountOffer, Na as BoardTransactionsPage, Nn as SkillCatalogResponse, No as ChannelRuntimeState, Nr as SpaceInvitationLocation, Nt as LabelItemsResponse, O as BillingConversionIntent, Oa as BoardPlaybackSnapshot, On as SessionTurnSignedUrlsResponse, Or as SpaceFsUploadProgress, Ot as JsonPrimitive, P as BillingDiscountOfferRef, Pa as BoardTransactionsReadInput, Pn as SkillCatalogSource, Po as DiscordChannelConfig, Pr as SpaceListItem, Pt as LabelItemsSessionFork, Q as CheckpointDiffDelivery, Qn as SpaceCommerceProductBenefitBinding, Qo as ModelThinkingLevel, Qr as SpaceUsageHourlyStat, Qt as PromptTemplateCatalogResponse, R as BillingPluginStatus, Rn as SpaceActivityContributor, Ro as SessionTurnSegmentRecord, Rr as SpacePendingDiffFileResponse, Rt as LabelScopeType, S as BillingBalanceActivityStatus, Sa as BoardDiagnostic, Sn as SessionMessageResponse, Sr as SpaceFsTreeResponse, St as GlobalSearchResponse, T as BillingCheckoutActionState, Ta as BoardPlaybackCommand, Tn as SessionRecord, Tr as SpaceFsUploadError, Tt as GlobalSearchViewerRelation, U as BillingProductPricing, Ua as BoardSemanticCommand, Un as SpaceBootstrapStatus, Uo as StoredIntermediateMessage, Ur as SpaceRecord, Ut as PaletteOverviewResponse, V as BillingProductDisplay, Va as BoardItemPatch, Vn as SpaceBootstrapSource, Vo as SessionTurnRecord, Vr as SpacePresenceUser, Vt as ModelCatalogEntry, W as BillingProductPromotion, Wn as SpaceChannelBindingInput, Wo as StoredToolCall, Wr as SpaceRole, Wt as PaletteOverviewSession, X as BillingSubscriptionSummary, Xn as SpaceCommerceOrder, Xo as CompletionUsage, Xr as SpaceTurnListItem, Xt as PromptAccessMode, Y as BillingSubscriptionHistoryStatus, Yn as SpaceCommerceFeatureBenefit, Yo as CompletionThinkingLevel, Yr as SpaceTurnAuthorFilter, Yt as Permission, Z as Channel, Zn as SpaceCommerceProduct, Zo as CreateSpaceCompletionInput, Zr as SpaceTurnsResponse, Zt as PromptTemplateCatalogEntry, _ as ApiError, _a as BoardCameraFocus, _n as ReferralStatus, _r as SpaceFsMoveInput, _t as CronJobUpdatePatch, ai as UserActivityRankings, an as ReferenceAggregateGroup, ao as BoardProceduralClip, ar as SpaceDefaultResponse, at as CheckpointDiffSummary, b as BillingBalanceActivityKind, ba as BoardCapabilities, bn as SendMessageCronJobPayload, br as SpaceFsReadFilesInput, bt as GenerationUsageHourlyStat, ci as UserRulesResponse, cn as ReferenceDirection, co as BoardTrack, cr as SpaceFsCompleteUploadResponse, ct as CreateInvitationInput, di as UserSessionsResponse, dn as ReferenceQueryableType, do as BoardCapability, dr as SpaceFsCreateUploadResponse, dt as CreateSpaceModInput, ei as SpaceUsageSummary, en as PublicUserAppItem, eo as BoardComposition, er as SpaceConfig, es as SpaceCompletionStreamEvent, et as CheckpointDiffFileResponse, fi as scopeListHasPermission, fn as ReferenceRecord, fo as BoardCoordinateSpace, fr as SpaceFsDeleteNodeInput, ft as CreateSpacePromptInput, g as AcceptInvitationResponse, gn as ReferralReward, go as GenerationPolicy, gr as SpaceFsFileResponse, gt as CronJobRecord, ha as BoardDealParams, hn as ReferralListItem, hr as SpaceFsFileKind, ht as CronJobPayload, ii as UserActivityRange, in as PublicUserWorkItem, io as BoardEasing, ir as SpaceCreateResponse, it as CheckpointDiffStatus, j as BillingCreditStatus, ja as BoardTransactionOperation, jn as SessionTurnsPaginatedResponse, jo as ChannelHealth, jr as SpaceInvitation, jt as LabelAssignmentPageInfo, k as BillingCreditExpiryGroup, ka as BoardRecord, kn as SessionTurnStreamSnapshotResponse, ko as GenerationResult, kr as SpaceFsUploadResponse, kt as JsonValue, li as UserSessionListItem, ln as ReferenceKind, lr as SpaceFsCreateDirectoryInput, lt as CreateInvitationResponse, mn as ReferralDashboard, mr as SpaceFsEntry, mt as CreateSpaceSessionInput, ni as TaskRunRecord, nn as PublicUserProfile, no as BoardCompositionPlayback, nr as SpaceConfigResponse, ns as ContentBlock, nt as CheckpointDiffPatchLine, oi as UserActivityResponse, on as ReferenceAggregateGroupBy, oo as BoardTimeline, or as SpaceEnvInput, ot as CheckpointRecord, pa as BoardAnimationSpec, pn as ReferenceResourceType, po as BoardRenderCost, pr as SpaceFsEncoding, pt as CreateSpacePromptResponse, q as BillingResponsePayload, qa as BoardEffect, qn as SpaceCommerceBuyerProfile, qo as CompletionMessage, qr as SpaceSandboxProvider, qt as PatchResourceLabelsInput, ri as UserActivityQuery, rn as PublicUserSpaceItem, rr as SpaceConfigUpdateResponse, rt as CheckpointDiffStats, si as UserProfile, sn as ReferenceAggregateResponse, so as BoardTimelineMarker, sr as SpaceFsCompleteUploadInput, st as ClaimReferralResponse, ti as TaskRunDetailResponse, tn as PublicUserPageResponse, tr as SpaceConfigInput, tt as CheckpointDiffPatchKind, ui as UserSessionSpaceSummary, un as ReferenceQueryResponse, ur as SpaceFsCreateUploadInput, ut as CreateSpaceInput, v as BatchUserProfilesResponse, va as BoardCameraFocusParams, vn as ResourceLabelsResponse, vr as SpaceFsPreparingFile, vt as CursorPageInfo, w as BillingCatalogProduct, wa as BoardMutationReceipt, wn as SessionMessagesResponse, wr as SpaceFsUploadEntry, wt as GlobalSearchType, x as BillingBalanceActivityList, xa as BoardCreateInput, xn as SessionBindingRecord, xr as SpaceFsReadFilesResponse, xt as GenerationUsageSummary, y as BillingBalanceActivity, ya as BoardCameraState, yn as SandboxSpecId, yr as SpaceFsReadFilesError, yt as GenerationUsageBlock, z as BillingProductBillingInterval, za as BoardAuthoringReadInput, zn as SpaceActivityResponse, zo as MessageToolCallsFile, zr as SpacePendingDiffSummary, zt as LabelSource } from "./chunks/environment.js";
2
- import { Br as ListGenerationModelsResponse, Fr as SpaceStartupResponse, Hr as ModelStatusEntry, Ir as CreateGenerationTaskRequest, Jn as Fetch, Lr as CreateGenerationTaskResponse, Rr as GenerationTaskResult, Ur as ModelStatusResponse, Vr as PublicGenerationDeclaration, Yn as HttpError, Zn as HttpTransport, n as createHttpClient, qn as CohubClientOptions, t as CohubHttpClient, zr as GenerationUsageBilling } from "./chunks/http.js";
3
- export { AcceptInvitationResponse, ApiError, BatchUserProfilesResponse, BillingBalanceActivity, BillingBalanceActivityKind, BillingBalanceActivityList, BillingBalanceActivityStatus, BillingCatalog, BillingCatalogProduct, BillingCheckoutActionState, BillingCheckoutConfirmation, BillingCheckoutResult, BillingConversionIntent, BillingCreditExpiryGroup, BillingCreditGrantStatus, BillingCreditStatus, BillingCreditUnit, BillingDiscountOffer, BillingDiscountOfferRef, BillingDiscountPricing, BillingHistoryPagination, BillingPaymentStatus, BillingPluginStatus, BillingProductBillingInterval, BillingProductCreditBenefit, BillingProductDisplay, BillingProductKind, BillingProductPricing, BillingProductPromotion, BillingPromotionCodePreview, BillingRedemptionResult, BillingResponsePayload, BillingSubscriptionHistoryList, BillingSubscriptionHistoryStatus, BillingSubscriptionSummary, type BoardAnimationSpec, type BoardAnimationTarget, type BoardAssetRef, type BoardAuthoringItem, type BoardAuthoringReadInput, type BoardAuthoringSnapshot, type BoardCameraFocus, type BoardCameraFocusParams, type BoardCameraState, type BoardCapabilities, type BoardCapability, type BoardComposition, type BoardCompositionPlayback, type BoardCoordinateSpace, type BoardCreateInput, type BoardDealParams, type BoardDiagnostic, type BoardEasing, type BoardEffect, type BoardEffectInput, type BoardItemPatch, type BoardManifest, type BoardMutationReceipt, type BoardPlaybackCommand, type BoardPlaybackPolicy, type BoardPlaybackSnapshot, type BoardProceduralClip, type BoardRecord, type BoardRenderCost, type BoardSemanticCommand, type BoardSemanticMutation, type BoardSummary, type BoardTimeline, type BoardTimelineMarker, type BoardTrack, type BoardTransactionOperation, type BoardTransactionRecord, type BoardTransactionsPage, type BoardTransactionsReadInput, type BoardValidationResult, Channel, type ChannelConfig, type ChannelHealth, type ChannelHealthReasonCode, type ChannelRuntimeState, CheckpointDiffDelivery, CheckpointDiffFile, CheckpointDiffFileResponse, CheckpointDiffPatchKind, CheckpointDiffPatchLine, CheckpointDiffStats, CheckpointDiffStatus, CheckpointDiffSummary, CheckpointRecord, ClaimReferralResponse, type CohubClientOptions, CohubHttpClient, type CompletionAssistantMessage, type CompletionMessage, type CompletionMessageRole, type CompletionThinkingLevel, type CompletionUsage, type ContentBlock, type CreateGenerationTaskRequest, type CreateGenerationTaskResponse, CreateInvitationInput, CreateInvitationResponse, type CreateSpaceCompletionInput, CreateSpaceInput, CreateSpaceModInput, CreateSpacePromptInput, CreateSpacePromptResponse, CreateSpaceSessionInput, CronJobPayload, CronJobRecord, CronJobUpdatePatch, CursorPageInfo, type DiscordChannelConfig, type FeishuChannelConfig, type Fetch, type GenerationContentBlock, type GenerationPolicy, type GenerationResult, type GenerationTaskResult, type GenerationUsageBilling, GenerationUsageBlock, GenerationUsageHourlyStat, GenerationUsageSummary, GlobalSearchResponse, GlobalSearchResult, GlobalSearchType, GlobalSearchViewerRelation, HttpError, HttpTransport, InvitationDetail, JsonObject, JsonPrimitive, JsonValue, LabelAssignmentListItem, LabelAssignmentPageInfo, LabelAssignmentRecord, LabelItemsResponse, LabelItemsSessionFork, LabelListItem, LabelRecord, LabelResourceType, LabelScopeType, LabelSource, type ListGenerationModelsResponse, MeResponse, type MessageRecord, type MessageToolCallsFile, ModelCatalogEntry, type ModelStatusEntry, type ModelStatusResponse, type ModelThinkingLevel, PERMISSIONS, PaletteOverviewResponse, PaletteOverviewSession, PaletteOverviewSpace, PaletteOverviewSpaceRelation, PatchResourceLabelsInput, PatchResourceLabelsResponse, Permission, PromptAccessMode, PromptTemplateCatalogEntry, PromptTemplateCatalogResponse, type PublicGenerationDeclaration, PublicReferral, PublicUserAppItem, PublicUserPageResponse, PublicUserProfile, PublicUserSpaceItem, PublicUserWorkItem, ReferenceAggregateGroup, ReferenceAggregateGroupBy, ReferenceAggregateResponse, ReferenceDirection, ReferenceKind, ReferenceQueryResponse, ReferenceQueryableType, ReferenceRecord, ReferenceResourceType, ReferralDashboard, ReferralListItem, ReferralReward, ReferralStatus, ResourceLabelsResponse, SandboxSpecId, SendMessageCronJobPayload, SessionBindingRecord, type SessionForkRecord, SessionMessageResponse, SessionMessagesPaginatedResponse, SessionMessagesResponse, SessionRecord, type SessionTurnIndexItem, SessionTurnIndexResponse, type SessionTurnRecord, SessionTurnResponse, type SessionTurnSegmentRecord, SessionTurnSignedUrlsResponse, SessionTurnStreamSnapshotResponse, SessionTurnWindowResponse, SessionTurnsPaginatedResponse, SkillCatalogEntry, SkillCatalogResponse, SkillCatalogSource, SpaceAccess, SpaceAccessPolicy, SpaceActivityAppRanking, SpaceActivityContributor, SpaceActivityResponse, SpaceBootstrapMeta, SpaceBootstrapSource, SpaceBootstrapStage, SpaceBootstrapStatus, SpaceChannelBindingInput, SpaceCheckpointDetailResponse, SpaceCommerceBenefit, SpaceCommerceBuyerProfile, SpaceCommerceCreditsBenefit, SpaceCommerceFeatureBenefit, SpaceCommerceOrder, SpaceCommerceProduct, SpaceCommerceProductBenefitBinding, SpaceCommerceProductCreditBenefit, type SpaceCompletionResult, type SpaceCompletionStreamEvent, SpaceConfig, SpaceConfigInput, SpaceConfigResponse, SpaceConfigUpdateResponse, SpaceCreateResponse, SpaceDefaultResponse, SpaceEnvInput, SpaceFsCompleteUploadInput, SpaceFsCompleteUploadResponse, SpaceFsCreateDirectoryInput, SpaceFsCreateUploadInput, SpaceFsCreateUploadResponse, SpaceFsDeleteNodeInput, SpaceFsEncoding, SpaceFsEntry, SpaceFsFileKind, SpaceFsFileResponse, SpaceFsMoveInput, SpaceFsPreparingFile, SpaceFsReadFilesError, SpaceFsReadFilesInput, SpaceFsReadFilesResponse, SpaceFsTreeResponse, SpaceFsUploadDestination, SpaceFsUploadEntry, SpaceFsUploadError, SpaceFsUploadPlanEntry, SpaceFsUploadPlanEntryInput, SpaceFsUploadProgress, SpaceFsUploadResponse, SpaceFsWriteFileInput, SpaceInvitation, SpaceInvitationListResponse, SpaceInvitationLocation, SpaceListItem, SpaceMember, SpaceMeta, SpaceModListItem, SpacePendingDiffFileResponse, SpacePendingDiffSummary, SpacePresenceSnapshot, SpacePresenceUser, SpacePublicProfile, SpaceRecord, SpaceRole, SpaceSandboxAutoDestroyPolicy, SpaceSandboxConfig, SpaceSandboxProvider, SpaceSessionsResponse, type SpaceStartupResponse, SpaceTurnAuthorFilter, SpaceTurnListItem, SpaceTurnsResponse, SpaceUsageHourlyStat, SpaceUsageResponse, SpaceUsageSummary, type StoredIntermediateMessage, type StoredToolCall, TaskRunDetailResponse, TaskRunRecord, type TurnIntermediateMessagesFile, UserActivityQuery, UserActivityRange, UserActivityRankings, UserActivityResponse, UserProfile, UserRulesResponse, UserSessionListItem, UserSessionSpaceSummary, UserSessionsResponse, createHttpClient, scopeListHasPermission };
1
+ import { $ as CheckpointDiffFile, $n as SpaceCommerceProductCreditBenefit, $o as CompletionUsage, $r as SpaceUsageResponse, $t as PublicReferral, A as BillingCreditGrantStatus, An as SessionTurnWindowResponse, Ao as GenerationContentBlock, Ar as SpaceFsWriteFileInput, At as LabelAssignmentListItem, B as BillingProductCreditBenefit, Ba as BoardAuthoringItem, Bn as SpaceBootstrapMeta, Bo as SessionForkRecord, Br as SpacePresenceSnapshot, Bt as MeResponse, C as BillingCatalog, Ca as BoardCapabilities, Cn as SessionMessagesPaginatedResponse, Cr as SpaceFsUploadDestination, Ct as GlobalSearchResult, D as BillingCheckoutResult, Da as BoardMutationReceipt, Dn as SessionTurnResponse, Dr as SpaceFsUploadPlanEntryInput, Dt as JsonObject, E as BillingCheckoutConfirmation, Ea as BoardManifest, En as SessionTurnIndexResponse, Er as SpaceFsUploadPlanEntry, Et as InvitationDetail, F as BillingDiscountPricing, Fa as BoardTransactionRecord, Fn as SpaceAccess, Fo as ChannelHealthReasonCode, Fr as SpaceMember, Ft as LabelListItem, G as BillingPromotionCodePreview, Gn as SpaceCheckpointDetailResponse, Gr as SpaceSandboxAutoDestroyPolicy, Gt as PaletteOverviewSpace, H as BillingProductKind, Ha as BoardAuthoringReadInput, Hn as SpaceBootstrapStage, Ho as MessageToolCallsFile, Hr as SpacePublicProfile, Ht as PERMISSIONS, I as BillingHistoryPagination, Ia as BoardTransactionsPage, In as SpaceAccessPolicy, Io as ChannelRuntimeState, Ir as SpaceMeta, It as LabelRecord, J as BillingSubscriptionHistoryList, Ja as BoardSemanticMutation, Jn as SpaceCommerceCreditsBenefit, Jo as TurnIntermediateMessagesFile, Jr as SpaceSessionsResponse, Jt as PatchResourceLabelsResponse, K as BillingRedemptionResult, Ka as BoardSemanticCommand, Kn as SpaceCommerceBenefit, Ko as StoredIntermediateMessage, Kr as SpaceSandboxConfig, Kt as PaletteOverviewSpaceRelation, L as BillingPaymentStatus, La as BoardTransactionsReadInput, Ln as SpaceActivityAppRanking, Lo as DiscordChannelConfig, Lr as SpaceModListItem, Lt as LabelResourceType, M as BillingCreditUnit, Ma as BoardRecord, Mn as SkillCatalogEntry, Mo as GenerationResult, Mr as SpaceInvitationListResponse, Mt as LabelAssignmentRecord, N as BillingDiscountOffer, Na as BoardSummary, Nn as SkillCatalogResponse, No as ChannelConfig, Nr as SpaceInvitationLocation, Nt as LabelItemsResponse, O as BillingConversionIntent, Oa as BoardPlaybackCommand, On as SessionTurnSignedUrlsResponse, Or as SpaceFsUploadProgress, Ot as JsonPrimitive, P as BillingDiscountOfferRef, Pa as BoardTransactionOperation, Pn as SkillCatalogSource, Po as ChannelHealth, Pr as SpaceListItem, Pt as LabelItemsSessionFork, Q as CheckpointDiffDelivery, Qn as SpaceCommerceProductBenefitBinding, Qo as CompletionThinkingLevel, Qr as SpaceUsageHourlyStat, Qt as PromptTemplateCatalogResponse, R as BillingPluginStatus, Ra as BoardValidationResult, Rn as SpaceActivityContributor, Ro as FeishuChannelConfig, Rr as SpacePendingDiffFileResponse, Rt as LabelScopeType, S as BillingBalanceActivityStatus, Sa as BoardCameraState, Sn as SessionMessageResponse, Sr as SpaceFsTreeResponse, St as GlobalSearchResponse, T as BillingCheckoutActionState, Ta as BoardDiagnostic, Tn as SessionRecord, Tr as SpaceFsUploadError, Tt as GlobalSearchViewerRelation, U as BillingProductPricing, Ua as BoardAuthoringSnapshot, Un as SpaceBootstrapStatus, Uo as SessionTurnIndexItem, Ur as SpaceRecord, Ut as PaletteOverviewResponse, V as BillingProductDisplay, Vn as SpaceBootstrapSource, Vo as SessionTurnSegmentRecord, Vr as SpacePresenceUser, Vt as ModelCatalogEntry, W as BillingProductPromotion, Wa as BoardItemPatch, Wn as SpaceChannelBindingInput, Wo as SessionTurnRecord, Wr as SpaceRole, Wt as PaletteOverviewSession, X as BillingSubscriptionSummary, Xa as BoardEffect, Xn as SpaceCommerceOrder, Xo as CompletionMessage, Xr as SpaceTurnListItem, Xt as PromptAccessMode, Y as BillingSubscriptionHistoryStatus, Ya as BoardAssetRef, Yn as SpaceCommerceFeatureBenefit, Yo as CompletionAssistantMessage, Yr as SpaceTurnAuthorFilter, Yt as Permission, Z as Channel, Za as BoardEffectInput, Zn as SpaceCommerceProduct, Zo as CompletionMessageRole, Zr as SpaceTurnsResponse, Zt as PromptTemplateCatalogEntry, _ as ApiError, _n as ReferralStatus, _r as SpaceFsMoveInput, _t as CronJobUpdatePatch, ai as UserActivityRange, an as ReferenceAggregateGroup, ao as BoardCompositionPlayback, ar as SpaceDefaultResponse, as as ContentBlock, at as CheckpointDiffSummary, b as BillingBalanceActivityKind, ba as BoardCameraFocus, bn as SendMessageCronJobPayload, br as SpaceFsReadFilesInput, bt as GenerationUsageHourlyStat, ci as UserProfile, cn as ReferenceDirection, co as BoardProceduralClip, cr as SpaceFsCompleteUploadResponse, ct as CreateInvitationInput, di as UserSessionSpaceSummary, dn as ReferenceQueryableType, do as BoardTrack, dr as SpaceFsCreateUploadResponse, dt as CreateSpaceModInput, ei as SpaceUsageSummary, en as PublicUserAppItem, er as SpaceConfig, es as CreateSpaceCompletionInput, et as CheckpointDiffFileResponse, fi as UserSessionsResponse, fn as ReferenceRecord, fr as SpaceFsDeleteNodeInput, ft as CreateSpacePromptInput, g as AcceptInvitationResponse, ga as BoardAnimationSpec, gn as ReferralReward, go as BoardRenderCost, gr as SpaceFsFileResponse, gt as CronJobRecord, hn as ReferralListItem, ho as BoardCoordinateSpace, hr as SpaceFsFileKind, ht as CronJobPayload, ii as UserActivityQuery, in as PublicUserWorkItem, ir as SpaceCreateResponse, it as CheckpointDiffStatus, j as BillingCreditStatus, ja as BoardPlaybackSnapshot, jn as SessionTurnsPaginatedResponse, jr as SpaceInvitation, jt as LabelAssignmentPageInfo, k as BillingCreditExpiryGroup, ka as BoardPlaybackPolicy, kn as SessionTurnStreamSnapshotResponse, kr as SpaceFsUploadResponse, kt as JsonValue, li as UserRulesResponse, ln as ReferenceKind, lo as BoardTimeline, lr as SpaceFsCreateDirectoryInput, lt as CreateInvitationResponse, mi as scopeListHasPermission, mn as ReferralDashboard, mo as BoardCapability, mr as SpaceFsEntry, mt as CreateSpaceSessionInput, ni as TaskRunRecord, nn as PublicUserProfile, no as BoardAnimationTarget, nr as SpaceConfigResponse, ns as SpaceCompletionResult, nt as CheckpointDiffPatchLine, oi as UserActivityRankings, on as ReferenceAggregateGroupBy, or as SpaceEnvInput, ot as CheckpointRecord, pi as isUserLevelPermission, pn as ReferenceResourceType, pr as SpaceFsEncoding, pt as CreateSpacePromptResponse, q as BillingResponsePayload, qn as SpaceCommerceBuyerProfile, qo as StoredToolCall, qr as SpaceSandboxProvider, qt as PatchResourceLabelsInput, ri as USER_LEVEL_PERMISSIONS, rn as PublicUserSpaceItem, ro as BoardComposition, rr as SpaceConfigUpdateResponse, rs as SpaceCompletionStreamEvent, rt as CheckpointDiffStats, si as UserActivityResponse, sn as ReferenceAggregateResponse, so as BoardEasing, sr as SpaceFsCompleteUploadInput, st as ClaimReferralResponse, ti as TaskRunDetailResponse, tn as PublicUserPageResponse, tr as SpaceConfigInput, ts as ModelThinkingLevel, tt as CheckpointDiffPatchKind, ui as UserSessionListItem, un as ReferenceQueryResponse, uo as BoardTimelineMarker, ur as SpaceFsCreateUploadInput, ut as CreateSpaceInput, v as BatchUserProfilesResponse, va as BoardDealParams, vn as ResourceLabelsResponse, vr as SpaceFsPreparingFile, vt as CursorPageInfo, w as BillingCatalogProduct, wa as BoardCreateInput, wn as SessionMessagesResponse, wr as SpaceFsUploadEntry, wt as GlobalSearchType, x as BillingBalanceActivityList, xa as BoardCameraFocusParams, xn as SessionBindingRecord, xr as SpaceFsReadFilesResponse, xt as GenerationUsageSummary, y as BillingBalanceActivity, yn as SandboxSpecId, yo as GenerationPolicy, yr as SpaceFsReadFilesError, yt as GenerationUsageBlock, z as BillingProductBillingInterval, zn as SpaceActivityResponse, zo as MessageRecord, zr as SpacePendingDiffSummary, zt as LabelSource } from "./chunks/environment.js";
2
+ import { Br as SpaceStartupResponse, Gr as ListGenerationModelsResponse, Hr as CreateGenerationTaskResponse, Jn as CohubClientOptions, Jr as ModelStatusResponse, Kr as PublicGenerationDeclaration, Qn as HttpTransport, Ur as GenerationTaskResult, Vr as CreateGenerationTaskRequest, Wr as GenerationUsageBilling, Xn as HttpError, Yn as Fetch, n as createHttpClient, qr as ModelStatusEntry, t as CohubHttpClient } from "./chunks/http.js";
3
+ export { AcceptInvitationResponse, ApiError, BatchUserProfilesResponse, BillingBalanceActivity, BillingBalanceActivityKind, BillingBalanceActivityList, BillingBalanceActivityStatus, BillingCatalog, BillingCatalogProduct, BillingCheckoutActionState, BillingCheckoutConfirmation, BillingCheckoutResult, BillingConversionIntent, BillingCreditExpiryGroup, BillingCreditGrantStatus, BillingCreditStatus, BillingCreditUnit, BillingDiscountOffer, BillingDiscountOfferRef, BillingDiscountPricing, BillingHistoryPagination, BillingPaymentStatus, BillingPluginStatus, BillingProductBillingInterval, BillingProductCreditBenefit, BillingProductDisplay, BillingProductKind, BillingProductPricing, BillingProductPromotion, BillingPromotionCodePreview, BillingRedemptionResult, BillingResponsePayload, BillingSubscriptionHistoryList, BillingSubscriptionHistoryStatus, BillingSubscriptionSummary, type BoardAnimationSpec, type BoardAnimationTarget, type BoardAssetRef, type BoardAuthoringItem, type BoardAuthoringReadInput, type BoardAuthoringSnapshot, type BoardCameraFocus, type BoardCameraFocusParams, type BoardCameraState, type BoardCapabilities, type BoardCapability, type BoardComposition, type BoardCompositionPlayback, type BoardCoordinateSpace, type BoardCreateInput, type BoardDealParams, type BoardDiagnostic, type BoardEasing, type BoardEffect, type BoardEffectInput, type BoardItemPatch, type BoardManifest, type BoardMutationReceipt, type BoardPlaybackCommand, type BoardPlaybackPolicy, type BoardPlaybackSnapshot, type BoardProceduralClip, type BoardRecord, type BoardRenderCost, type BoardSemanticCommand, type BoardSemanticMutation, type BoardSummary, type BoardTimeline, type BoardTimelineMarker, type BoardTrack, type BoardTransactionOperation, type BoardTransactionRecord, type BoardTransactionsPage, type BoardTransactionsReadInput, type BoardValidationResult, Channel, type ChannelConfig, type ChannelHealth, type ChannelHealthReasonCode, type ChannelRuntimeState, CheckpointDiffDelivery, CheckpointDiffFile, CheckpointDiffFileResponse, CheckpointDiffPatchKind, CheckpointDiffPatchLine, CheckpointDiffStats, CheckpointDiffStatus, CheckpointDiffSummary, CheckpointRecord, ClaimReferralResponse, type CohubClientOptions, CohubHttpClient, type CompletionAssistantMessage, type CompletionMessage, type CompletionMessageRole, type CompletionThinkingLevel, type CompletionUsage, type ContentBlock, type CreateGenerationTaskRequest, type CreateGenerationTaskResponse, CreateInvitationInput, CreateInvitationResponse, type CreateSpaceCompletionInput, CreateSpaceInput, CreateSpaceModInput, CreateSpacePromptInput, CreateSpacePromptResponse, CreateSpaceSessionInput, CronJobPayload, CronJobRecord, CronJobUpdatePatch, CursorPageInfo, type DiscordChannelConfig, type FeishuChannelConfig, type Fetch, type GenerationContentBlock, type GenerationPolicy, type GenerationResult, type GenerationTaskResult, type GenerationUsageBilling, GenerationUsageBlock, GenerationUsageHourlyStat, GenerationUsageSummary, GlobalSearchResponse, GlobalSearchResult, GlobalSearchType, GlobalSearchViewerRelation, HttpError, HttpTransport, InvitationDetail, JsonObject, JsonPrimitive, JsonValue, LabelAssignmentListItem, LabelAssignmentPageInfo, LabelAssignmentRecord, LabelItemsResponse, LabelItemsSessionFork, LabelListItem, LabelRecord, LabelResourceType, LabelScopeType, LabelSource, type ListGenerationModelsResponse, MeResponse, type MessageRecord, type MessageToolCallsFile, ModelCatalogEntry, type ModelStatusEntry, type ModelStatusResponse, type ModelThinkingLevel, PERMISSIONS, PaletteOverviewResponse, PaletteOverviewSession, PaletteOverviewSpace, PaletteOverviewSpaceRelation, PatchResourceLabelsInput, PatchResourceLabelsResponse, Permission, PromptAccessMode, PromptTemplateCatalogEntry, PromptTemplateCatalogResponse, type PublicGenerationDeclaration, PublicReferral, PublicUserAppItem, PublicUserPageResponse, PublicUserProfile, PublicUserSpaceItem, PublicUserWorkItem, ReferenceAggregateGroup, ReferenceAggregateGroupBy, ReferenceAggregateResponse, ReferenceDirection, ReferenceKind, ReferenceQueryResponse, ReferenceQueryableType, ReferenceRecord, ReferenceResourceType, ReferralDashboard, ReferralListItem, ReferralReward, ReferralStatus, ResourceLabelsResponse, SandboxSpecId, SendMessageCronJobPayload, SessionBindingRecord, type SessionForkRecord, SessionMessageResponse, SessionMessagesPaginatedResponse, SessionMessagesResponse, SessionRecord, type SessionTurnIndexItem, SessionTurnIndexResponse, type SessionTurnRecord, SessionTurnResponse, type SessionTurnSegmentRecord, SessionTurnSignedUrlsResponse, SessionTurnStreamSnapshotResponse, SessionTurnWindowResponse, SessionTurnsPaginatedResponse, SkillCatalogEntry, SkillCatalogResponse, SkillCatalogSource, SpaceAccess, SpaceAccessPolicy, SpaceActivityAppRanking, SpaceActivityContributor, SpaceActivityResponse, SpaceBootstrapMeta, SpaceBootstrapSource, SpaceBootstrapStage, SpaceBootstrapStatus, SpaceChannelBindingInput, SpaceCheckpointDetailResponse, SpaceCommerceBenefit, SpaceCommerceBuyerProfile, SpaceCommerceCreditsBenefit, SpaceCommerceFeatureBenefit, SpaceCommerceOrder, SpaceCommerceProduct, SpaceCommerceProductBenefitBinding, SpaceCommerceProductCreditBenefit, type SpaceCompletionResult, type SpaceCompletionStreamEvent, SpaceConfig, SpaceConfigInput, SpaceConfigResponse, SpaceConfigUpdateResponse, SpaceCreateResponse, SpaceDefaultResponse, SpaceEnvInput, SpaceFsCompleteUploadInput, SpaceFsCompleteUploadResponse, SpaceFsCreateDirectoryInput, SpaceFsCreateUploadInput, SpaceFsCreateUploadResponse, SpaceFsDeleteNodeInput, SpaceFsEncoding, SpaceFsEntry, SpaceFsFileKind, SpaceFsFileResponse, SpaceFsMoveInput, SpaceFsPreparingFile, SpaceFsReadFilesError, SpaceFsReadFilesInput, SpaceFsReadFilesResponse, SpaceFsTreeResponse, SpaceFsUploadDestination, SpaceFsUploadEntry, SpaceFsUploadError, SpaceFsUploadPlanEntry, SpaceFsUploadPlanEntryInput, SpaceFsUploadProgress, SpaceFsUploadResponse, SpaceFsWriteFileInput, SpaceInvitation, SpaceInvitationListResponse, SpaceInvitationLocation, SpaceListItem, SpaceMember, SpaceMeta, SpaceModListItem, SpacePendingDiffFileResponse, SpacePendingDiffSummary, SpacePresenceSnapshot, SpacePresenceUser, SpacePublicProfile, SpaceRecord, SpaceRole, SpaceSandboxAutoDestroyPolicy, SpaceSandboxConfig, SpaceSandboxProvider, SpaceSessionsResponse, type SpaceStartupResponse, SpaceTurnAuthorFilter, SpaceTurnListItem, SpaceTurnsResponse, SpaceUsageHourlyStat, SpaceUsageResponse, SpaceUsageSummary, type StoredIntermediateMessage, type StoredToolCall, TaskRunDetailResponse, TaskRunRecord, type TurnIntermediateMessagesFile, USER_LEVEL_PERMISSIONS, UserActivityQuery, UserActivityRange, UserActivityRankings, UserActivityResponse, UserProfile, UserRulesResponse, UserSessionListItem, UserSessionSpaceSummary, UserSessionsResponse, createHttpClient, isUserLevelPermission, scopeListHasPermission };
package/dist/http.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import { n as createHttpClient, t as CohubHttpClient } from "./chunks/http.js";
2
2
  import { n as HttpTransport, t as HttpError } from "./chunks/transport.js";
3
- import { f as PERMISSIONS, p as scopeListHasPermission } from "./chunks/environment.js";
4
- export { CohubHttpClient, HttpError, HttpTransport, PERMISSIONS, createHttpClient, scopeListHasPermission };
3
+ import { f as PERMISSIONS, h as scopeListHasPermission, m as isUserLevelPermission, p as USER_LEVEL_PERMISSIONS } from "./chunks/environment.js";
4
+ export { CohubHttpClient, HttpError, HttpTransport, PERMISSIONS, USER_LEVEL_PERMISSIONS, createHttpClient, isUserLevelPermission, scopeListHasPermission };