@prefecthq/prefect-ui-library
Version:
This library is the Vue and Typescript component library for [Prefect 2](https://github.com/PrefectHQ/prefect) and [Prefect Cloud 2](https://www.prefect.io/cloud/). _The components and utilities in this project are not meant to be used independently_.
80 lines (79 loc) • 2.48 kB
TypeScript
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<string, unknown>;
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<string, string>;
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);
}