/* generated using openapi-typescript-codegen -- do not edit */ /* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ /** * Serializer for Artifact model. * * Artifacts are structured content like essays, documents, code files, etc. * that are generated by AI agents during a chat session and are best * displayed separately from the normal chat flow. * * Fields: * - id: Unique identifier for the artifact * - title: Title or identifier for the artifact * - content: The markdown-styled content of the artifact * - file_extension: The extension of the file (e.g., 'py', 'md', 'html', 'json', 'csv') * - chat_message: Reference to the chat message that contains this artifact * - llm_name: Name of the LLM that generated the artifact * - llm_provider: Provider of the LLM (e.g., 'openai', 'google', 'anthropic') * - date_created: Timestamp when the artifact was created * - date_updated: Timestamp when the artifact was last updated * - metadata: Additional metadata for the artifact * - username: Username of the student who owns the artifact (read-only) * - session_id: UUID of the session that generated the artifact (read-only) * * Read-only fields: * - id, date_created, date_updated, username, session_id */ export type Artifact = { readonly id: number; /** * Title or identifier for the artifact */ title: string; /** * Text content of the artifact; empty for binary artifacts */ readonly content: string; /** * Base64-encoded bytes of a binary artifact (pdf, xlsx, ...); null for text artifacts. The client chooses the rendering from `file_extension`/`mime_type`. */ readonly binary_content: string; /** * True when the artifact carries `binary_content` instead of `content` */ readonly is_binary: boolean; /** * MIME type of a binary artifact, e.g. application/pdf. */ readonly mime_type: string; /** * The extension of the file for the artifact. eg. `py`, `md`, `html`, `json`, `csv`, etc */ readonly file_extension: string; readonly llm_name: string; readonly llm_provider: string; readonly date_created: string; readonly date_updated: string; /** * Additional metadata for the artifact */ metadata?: any; /** * Username of the student who owns this artifact */ readonly username: string; readonly session_id: string | null; /** * Version number of the current version */ readonly current_version_number: number; /** * Total number of versions for this artifact */ readonly version_count: number; };