export declare const artifactTypes: readonly ["result", "markdown", "table", "progress", "image", "rich", "unknown"]; export type ArtifactType = typeof artifactTypes[number]; export declare const artifactTypeIconMap: { readonly default: "Artifact"; readonly markdown: "ArtifactMarkdown"; readonly table: "ArtifactTable"; readonly result: "ArtifactResult"; readonly progress: "ArtifactProgress"; readonly image: "ArtifactImage"; readonly rich: "Artifact"; readonly unknown: "Artifact"; }; export type ResultArtifactData = Record; export type ProgressArtifactData = number; export type MarkdownArtifactData = string; export type TableArtifactData = string; export type ImageArtifactData = string; export type RichArtifactData = { html: string; sandbox?: string[]; csp?: string; }; export type UnknownArtifactData = unknown; export type ArtifactData = ResultArtifactData | MarkdownArtifactData | TableArtifactData | ProgressArtifactData | ImageArtifactData | RichArtifactData | UnknownArtifactData; export type ArtifactMetadata = Record; export interface IArtifact { id: string; created: Date; updated: Date; key: string | null; type: ArtifactType; description: string | null; data: ArtifactData; metadata: ArtifactMetadata; flowRunId: string | null; taskRunId: string | null; } export type ResultArtifact = IArtifact & { type: 'result'; data: ResultArtifactData; }; export type MarkdownArtifact = IArtifact & { type: 'markdown'; data: MarkdownArtifactData; }; export type TableArtifact = IArtifact & { type: 'table'; data: TableArtifactData; }; export type ProgressArtifact = IArtifact & { type: 'progress'; data: ProgressArtifactData; }; export type ImageArtifact = IArtifact & { type: 'image'; data: ImageArtifactData; }; export type RichArtifact = IArtifact & { type: 'rich'; data: RichArtifactData; }; export type UnknownArtifact = IArtifact & { type: 'unknown'; data: unknown; }; export declare class Artifact implements IArtifact { readonly id: string; readonly key: string | null; readonly kind = "artifact"; readonly flowRunId: string | null; readonly taskRunId: string | null; readonly created: Date; readonly updated: Date; type: ArtifactType; description: string | null; data: ArtifactData; metadata: ArtifactMetadata; constructor(artifact: IArtifact); }