/**
 * DDL statements for DuckDB observability tables.
 * All tables use append-only patterns with a single `timestamp` column.
 *
 * Column ordering convention:
 *   1. Event metadata (eventType, timestamp)
 *   2. IDs (trace, span, experiment, resource, run, session, etc.)
 *   3. Entity hierarchy (entity, parent, root)
 *   4. Context (user, org, environment, service, executionSource)
 *   5. Domain-specific scalar fields
 *   6. JSON fields (attributes, metadata, tags, input/output, etc.)
 */
export declare const SPAN_EVENTS_CURSOR_SEQUENCE_DDL = "\nCREATE SEQUENCE IF NOT EXISTS span_events_cursor_id_seq START 1\n";
export declare const METRIC_EVENTS_CURSOR_SEQUENCE_DDL = "\nCREATE SEQUENCE IF NOT EXISTS metric_events_cursor_id_seq START 1\n";
export declare const LOG_EVENTS_CURSOR_SEQUENCE_DDL = "\nCREATE SEQUENCE IF NOT EXISTS log_events_cursor_id_seq START 1\n";
export declare const SCORE_EVENTS_CURSOR_SEQUENCE_DDL = "\nCREATE SEQUENCE IF NOT EXISTS score_events_cursor_id_seq START 1\n";
export declare const FEEDBACK_EVENTS_CURSOR_SEQUENCE_DDL = "\nCREATE SEQUENCE IF NOT EXISTS feedback_events_cursor_id_seq START 1\n";
/** DDL for the span_events append-only table. */
export declare const SPAN_EVENTS_DDL = "\nCREATE TABLE IF NOT EXISTS span_events (\n  -- Event metadata\n  eventType VARCHAR NOT NULL,\n  timestamp TIMESTAMP NOT NULL,\n  cursorId BIGINT,\n\n  -- IDs\n  traceId VARCHAR NOT NULL,\n  spanId VARCHAR NOT NULL,\n  parentSpanId VARCHAR,\n  experimentId VARCHAR,\n\n  -- Entity\n  entityType VARCHAR,\n  entityId VARCHAR,\n  entityName VARCHAR,\n  entityVersionId VARCHAR,\n\n  -- Context\n  userId VARCHAR,\n  organizationId VARCHAR,\n  resourceId VARCHAR,\n  runId VARCHAR,\n  sessionId VARCHAR,\n  threadId VARCHAR,\n  requestId VARCHAR,\n  environment VARCHAR,\n  source VARCHAR,\n  serviceName VARCHAR,\n  requestContext JSON,\n\n  -- Span-specific scalars\n  name VARCHAR,\n  spanType VARCHAR,\n  isEvent BOOLEAN,\n  endedAt TIMESTAMP,\n\n  -- JSON fields\n  attributes JSON,\n  metadata JSON,\n  tags JSON,\n  scope JSON,\n  links JSON,\n  input JSON,\n  output JSON,\n  error JSON\n)";
/** DDL for the metric_events append-only table. */
export declare const METRIC_EVENTS_DDL = "\nCREATE TABLE IF NOT EXISTS metric_events (\n  -- Event metadata\n  timestamp TIMESTAMP NOT NULL,\n  cursorId BIGINT,\n\n  -- IDs\n  metricId VARCHAR NOT NULL PRIMARY KEY,\n  traceId VARCHAR,\n  spanId VARCHAR,\n  experimentId VARCHAR,\n\n  -- Entity hierarchy\n  entityType VARCHAR,\n  entityId VARCHAR,\n  entityName VARCHAR,\n  entityVersionId VARCHAR,\n  parentEntityVersionId VARCHAR,\n  parentEntityType VARCHAR,\n  parentEntityId VARCHAR,\n  parentEntityName VARCHAR,\n  rootEntityVersionId VARCHAR,\n  rootEntityType VARCHAR,\n  rootEntityId VARCHAR,\n  rootEntityName VARCHAR,\n\n  -- Context\n  userId VARCHAR,\n  organizationId VARCHAR,\n  resourceId VARCHAR,\n  runId VARCHAR,\n  sessionId VARCHAR,\n  threadId VARCHAR,\n  requestId VARCHAR,\n  environment VARCHAR,\n  executionSource VARCHAR,\n  serviceName VARCHAR,\n\n  -- Metric-specific scalars\n  name VARCHAR NOT NULL,\n  value DOUBLE NOT NULL,\n  provider VARCHAR,\n  model VARCHAR,\n  estimatedCost DOUBLE,\n  costUnit VARCHAR,\n\n  -- JSON fields\n  tags JSON,\n  labels JSON,\n  costMetadata JSON,\n  metadata JSON,\n  scope JSON\n)";
/** DDL for the log_events append-only table. */
export declare const LOG_EVENTS_DDL = "\nCREATE TABLE IF NOT EXISTS log_events (\n  -- Event metadata\n  timestamp TIMESTAMP NOT NULL,\n  cursorId BIGINT,\n\n  -- IDs\n  logId VARCHAR NOT NULL PRIMARY KEY,\n  traceId VARCHAR,\n  spanId VARCHAR,\n  experimentId VARCHAR,\n\n  -- Entity hierarchy\n  entityType VARCHAR,\n  entityId VARCHAR,\n  entityName VARCHAR,\n  entityVersionId VARCHAR,\n  parentEntityVersionId VARCHAR,\n  parentEntityType VARCHAR,\n  parentEntityId VARCHAR,\n  parentEntityName VARCHAR,\n  rootEntityVersionId VARCHAR,\n  rootEntityType VARCHAR,\n  rootEntityId VARCHAR,\n  rootEntityName VARCHAR,\n\n  -- Context\n  userId VARCHAR,\n  organizationId VARCHAR,\n  resourceId VARCHAR,\n  runId VARCHAR,\n  sessionId VARCHAR,\n  threadId VARCHAR,\n  requestId VARCHAR,\n  environment VARCHAR,\n  executionSource VARCHAR,\n  serviceName VARCHAR,\n\n  -- Log-specific scalars\n  level VARCHAR NOT NULL,\n  message VARCHAR NOT NULL,\n\n  -- JSON fields\n  data JSON,\n  tags JSON,\n  metadata JSON,\n  scope JSON\n)";
/** DDL for the score_events append-only table. */
export declare const SCORE_EVENTS_DDL = "\nCREATE TABLE IF NOT EXISTS score_events (\n  -- Event metadata\n  timestamp TIMESTAMP NOT NULL,\n  cursorId BIGINT,\n\n  -- IDs\n  scoreId VARCHAR NOT NULL PRIMARY KEY,\n  traceId VARCHAR,\n  spanId VARCHAR,\n  experimentId VARCHAR,\n  scoreTraceId VARCHAR,\n\n  -- Entity hierarchy\n  entityType VARCHAR,\n  entityId VARCHAR,\n  entityName VARCHAR,\n  entityVersionId VARCHAR,\n  parentEntityVersionId VARCHAR,\n  parentEntityType VARCHAR,\n  parentEntityId VARCHAR,\n  parentEntityName VARCHAR,\n  rootEntityVersionId VARCHAR,\n  rootEntityType VARCHAR,\n  rootEntityId VARCHAR,\n  rootEntityName VARCHAR,\n\n  -- Context\n  userId VARCHAR,\n  organizationId VARCHAR,\n  resourceId VARCHAR,\n  runId VARCHAR,\n  sessionId VARCHAR,\n  threadId VARCHAR,\n  requestId VARCHAR,\n  environment VARCHAR,\n  executionSource VARCHAR,\n  serviceName VARCHAR,\n\n  -- Score-specific scalars\n  scorerId VARCHAR NOT NULL,\n  scorerVersion VARCHAR,\n  source VARCHAR,\n  scoreSource VARCHAR,\n  score DOUBLE NOT NULL,\n  reason VARCHAR,\n\n  -- JSON fields\n  tags JSON,\n  metadata JSON,\n  scope JSON\n)";
/** DDL for the feedback_events append-only table. */
export declare const FEEDBACK_EVENTS_DDL = "\nCREATE TABLE IF NOT EXISTS feedback_events (\n  -- Event metadata\n  timestamp TIMESTAMP NOT NULL,\n  cursorId BIGINT,\n\n  -- IDs\n  feedbackId VARCHAR NOT NULL PRIMARY KEY,\n  traceId VARCHAR,\n  spanId VARCHAR,\n  experimentId VARCHAR,\n  -- Entity hierarchy\n  entityType VARCHAR,\n  entityId VARCHAR,\n  entityName VARCHAR,\n  entityVersionId VARCHAR,\n  parentEntityVersionId VARCHAR,\n  parentEntityType VARCHAR,\n  parentEntityId VARCHAR,\n  parentEntityName VARCHAR,\n  rootEntityVersionId VARCHAR,\n  rootEntityType VARCHAR,\n  rootEntityId VARCHAR,\n  rootEntityName VARCHAR,\n\n  -- Context\n  userId VARCHAR,\n  organizationId VARCHAR,\n  resourceId VARCHAR,\n  runId VARCHAR,\n  sessionId VARCHAR,\n  threadId VARCHAR,\n  requestId VARCHAR,\n  environment VARCHAR,\n  executionSource VARCHAR,\n  serviceName VARCHAR,\n\n  -- Feedback actor / linkage\n  feedbackUserId VARCHAR,\n  sourceId VARCHAR,\n\n  -- Feedback-specific scalars\n  source VARCHAR,\n  feedbackSource VARCHAR NOT NULL,\n  feedbackType VARCHAR NOT NULL,\n  value VARCHAR NOT NULL,\n  comment VARCHAR,\n\n  -- JSON fields\n  tags JSON,\n  metadata JSON,\n  scope JSON\n)";
/** All observability DDL statements, in creation order. */
export declare const ALL_DDL: string[];
/** Additive migrations for observability tables created by older versions. */
export declare const ALL_MIGRATIONS: string[];
//# sourceMappingURL=ddl.d.ts.map