import { type WorkspaceMetadataStageInputV1 } from '@nexusclaw/shared/workspace-metadata-package'; import type { ApiClient } from './api-client'; import type { MetadataPackageArchiveInput } from './metadata-package-archive'; export interface WorkspaceMetadataLifecycleContract { schemaVersion: string; contractHash: string; availableOperations: string[]; blockingReasons: string[]; } export interface WorkspaceMetadataApprovalRequestInput { candidateId: string; evidenceId: string; evidenceDigest: string; approvalPolicyRevisionId: string; policyDigest: string; idempotencyKey: string; } export declare function negotiateWorkspaceMetadataLifecycle(client: Pick, workspaceId: string, operation: string): Promise; export declare function invokeWorkspaceMetadataLifecycle(client: Pick, workspaceId: string, operation: 'upload' | 'capture-baseline' | 'stage' | 'stage-preview' | 'status' | 'request-approval', input?: MetadataPackageArchiveInput | WorkspaceMetadataStageInputV1 | WorkspaceMetadataApprovalRequestInput | { candidateId?: string; }, idempotencyKey?: string): Promise;