import { type WorkspaceMember as WorkspaceMemberValue } from "@opengeni/contracts"; import type { Hono } from "hono"; import type { ApiRouteDeps } from "@opengeni/core"; import { type Settings } from "@opengeni/config"; export declare function canonicalWorkspacePolicyModelIds(settings: Settings, modelIds: string[] | null | undefined): string[] | null; type WorkspaceMemberProjectionInput = Omit & { permissions: unknown; }; /** * Keep the roster readable across stored-permission contract changes. Unknown * values are never re-authorized: they are omitted from the public projection, * while every currently recognized permission is preserved in stored order. */ export declare function workspaceMembersResponse(members: readonly WorkspaceMemberProjectionInput[]): { members: { subjectId: string; subjectLabel: string | null; role: string; permissions: ("account:admin" | "account:read" | "api_keys:manage" | "artifacts:publish" | "artifacts:read" | "billing:manage" | "billing:read" | "capabilities:manage" | "codemode:call" | "connections:read" | "connections:write" | "documents:manage" | "documents:search" | "enrollments:manage" | "enrollments:read" | "environments:manage" | "environments:use" | "files:read" | "files:upload" | "files:write" | "github:manage" | "github:use" | "goals:manage" | "mcp_servers:attach" | "members:manage" | "rigs:manage" | "rigs:use" | "scheduled_tasks:manage" | "scheduled_tasks:run" | "secrets:list" | "secrets:read" | "secrets:write" | "sessions:control" | "sessions:create" | "sessions:read" | "stream:acknowledge" | "stream:control" | "stream:view" | "terminal:attach" | "variable-sets:attach" | "variable-sets:list" | "variable-sets:manage" | "variable-sets:read" | "variable-sets:use" | "variable-sets:write" | "workspace:admin" | "workspace:create" | "workspace:read")[]; createdAt: string; }[]; }; export declare function workspaceUpdateRequestsAccountTransfer(value: unknown): boolean; export declare function registerWorkspaceRoutes(app: Hono, deps: ApiRouteDeps): void; export {};