export type ThreadStatusType = 'active' | 'locked' | 'closed'; export declare const ThreadStatus: { readonly ACTIVE: "active"; readonly LOCKED: "locked"; readonly CLOSED: "closed"; }; /** * Thread resource. * * Product semantics: * - Thread is the implicit concrete timeline/place under exactly one parent * container: Chat for conversation timelines, or Task for task execution * timelines. * - `parent` uses the standard Solid Chat/SIOC relation `sioc:has_parent`. * The parent container identifies the command surface/counterpart without * duplicating parallel chat/task ownership fields. * - AI product runtime sessions map to Thread when they represent a concrete * conversation timeline/place/run. * - Thread carries workspace/place relations and runtime metadata. * - Product/runtime-specific ids should stay in namespaced metadata such as * `metadata.protocols.`. Do not name the generic thread id * `piSessionId`, `matrixRoomId`, or `chatkitThreadId`. * * Storage structure (aligned with xpod): * - Chat thread location: /.data/chat/{chat|id}/index.ttl#{id} * - Task thread location: /.data/task/{task|id}/index.ttl#{id} * * NOTE: * - `thread.workspace` is a storage-layer reference (URI) to a container/resource in CSS/Pod. * - It is NOT the same thing as the runtime create API payload `workspace: { path, copy }`. * - Runtime path/copy is an execution-time interface shape; persistence should keep the * container URI here and store portable metadata with that container/resource. */ export declare const threadResource: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns; parent: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>; title: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>; status: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, true>; starred: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"boolean", null, false, true>; workspace: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>; metadata: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"object", null, false, false>; createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>; updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>; }>>; export declare const threadTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns; parent: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>; title: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>; status: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, true>; starred: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"boolean", null, false, true>; workspace: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>; metadata: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"object", null, false, false>; createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>; updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>; }>>; export type ThreadRow = typeof threadResource.$inferSelect; export type ThreadInsert = typeof threadResource.$inferInsert; export type ThreadUpdate = typeof threadResource.$inferUpdate;