import { Router } from "express"; import type { WorkflowInfo } from "../shared/types.js"; import type { WorkspaceScopeInput } from "../shared/workspace-scope.js"; import { StudioProjectCatalog } from "@sapiom/agent-map/node/studio-project-catalog"; import { StudioWorkspacePreferenceStore } from "../core/studio-workspace-preferences.js"; export interface StudioProjectsRouterOptions { catalog: StudioProjectCatalog; preferences: StudioWorkspacePreferenceStore; /** Current trusted principal; authentication can change without a restart. */ currentUserId: () => string; listWorkflows: () => readonly WorkflowInfo[] | Promise; isWorkflowScanComplete: (roots: readonly string[]) => boolean | Promise; /** Existing allow-listed roots only; this callback must not scan source. */ listWorkspaceScopes: () => readonly WorkspaceScopeInput[] | Promise; } /** * Studio project identity: create a project, bind its roots, and read or set * the current workspace. Mounted beneath the boot-token-protected `/api` * boundary. The agent map has its own route (project-map.ts). */ export declare function createStudioProjectsRouter(options: StudioProjectsRouterOptions): Router; //# sourceMappingURL=studio-projects.d.ts.map