export type ArtifactKind = 'SOURCE' | 'DOCUMENT' | 'IMAGE' | 'DATASET' | 'FORM' | 'BUILD' | 'PACKAGE' | 'MODEL_OUTPUT' | 'EXECUTION_OUTPUT' | 'LOG' | 'REPORT' | 'BACKUP' | 'EXPORT' | 'IMPORT' | 'APPLICATION' | 'CONFIGURATION' | { OTHER: string; }; export type ArtifactLifecycle = 'CREATED' | 'ACTIVE' | 'SUPERSEDED' | 'ARCHIVED' | 'DELETED'; export interface Artifact { id: string; tenant_id: string; application_id: string; content_hash: string; content_type: string; size: number; kind: ArtifactKind; lifecycle: ArtifactLifecycle; created_by: string; producer: { kind: string; id: string; }; source?: string; parents: string[]; supersedes?: string; revision?: string; workload?: string; execution?: string; metadata: { name: string; environment?: string; tags: string[]; labels: Record; retention: unknown; }; created_at: number; } export interface CreateArtifact { applicationId: string; kind: ArtifactKind; content: Blob | ArrayBuffer | Uint8Array; contentType: string; name: string; producerKind?: string; producerId?: string; parents?: string[]; supersedes?: string; revision?: string; workload?: string; execution?: string; } export declare class ArtifactClient { private baseUrl; private fetcher; constructor(baseUrl?: string, fetcher?: typeof fetch); private json; create(input: CreateArtifact): Promise; list(applicationId: string): Promise<{ artifacts: Artifact[]; }>; get(id: string): Promise; content(id: string): Promise>; provenance(id: string): Promise<{ artifact: Artifact; parents: Artifact[]; children: Artifact[]; }>; parents(id: string): Promise<{ artifacts: Artifact[]; }>; children(id: string): Promise<{ artifacts: Artifact[]; }>; archive(id: string): Promise; restore(id: string): Promise; } //# sourceMappingURL=artifact.d.ts.map