/** * Solution debug-provisioning status (Automation Solutions). * * Hand-written wrapper for * `GET /api/v1/solutions/{solutionKey}/projects/debug/status`. It is the same * endpoint Studio Web's provisioning flow polls when its SignalR * `ProjectDebugStatus` event does not arrive in time * (`ProvisionSolutionDebugService._pollDebugStatusFallback$`), which makes it * the CLI's way to wait for a `debugProjectAsync` that answered * `complete: false`. * * Generating it instead would take three things, none of them available here: * * 1. `src/scripts/generate-sdk.ts` excludes the whole `/api/v1/solutions/` * prefix as "problematic headers", so every path in this namespace is out * of scope by configuration — not merely missing. The two solutions/debug * paths that *are* in the committed swagger get filtered out for the same * reason; the generated client holds no `/api/v1/solutions/*` at all. * 2. This path is absent from the committed swagger, which was last refreshed * 2026-03-20, and the generator's source URL is auth-gated. * 3. Lifting the prefix exclusion means finding out which headers broke the * generator in the first place, which nobody wrote down. * * So this file is a deviation from how the SDKs are meant to work — see * `@uipath/orchestrator-sdk`, where every endpoint is generated and the * hand-written layer is helpers only. To undo it: refresh the swagger with a * valid session, add this path to `explicitlyIncludedPaths`, regenerate, and * delete this file. */ /** Auth/endpoint inputs for {@link getProjectDebugStatus}. */ export interface ProjectDebugStatusClientConfig { /** Tenant-scoped Automation Solutions base path (`.../automationsolutions_`). */ basePath: string; accessToken: string; } /** One provisioning error, as the status endpoint reports it. */ export interface ProjectDebugStatusError { message: string; serviceName?: string; resource?: { key?: string; name?: string; kind?: string; type?: string; }; } /** * Response of the debug status endpoint (mirrors Studio Web's * `ProjectDebugInfo`). `status` is open-ended on purpose: the service emits * non-terminal statuses while provisioning is in flight, and the poll only * acts on the terminal ones ({@link DEBUG_PROVISIONING_TERMINAL_STATUSES}). */ export interface ProjectDebugStatusResponse { sessionId?: string; status?: string; errors?: ProjectDebugStatusError[]; internalFolderId?: number | null; } /** Whether the provisioning session reached any terminal status. */ export declare const isDebugProvisioningTerminal: (status?: string) => boolean; /** Whether the provisioning session finished successfully. */ export declare const isDebugProvisioningSucceeded: (status?: string) => boolean; /** * Fetch the provisioning status of a solution debug session. * * Non-2xx responses throw the generated runtime's {@link ResponseError} so * callers' `extractErrorDetails` handling (status + body parsing) works * unchanged. */ export declare function getProjectDebugStatus(config: ProjectDebugStatusClientConfig, solutionKey: string, debugSessionId: string): Promise;