/**
 * PMO Schema - Single Source of Truth
 *
 * All PMO table definitions live here. Both database/index.ts and
 * storage-sqlite.ts import from this file to ensure schema consistency.
 */
export declare const PMO_TABLES: {
    readonly projects: "pmo_projects";
    readonly initiatives: "pmo_initiatives";
    readonly tickets: "pmo_tickets";
    readonly categories: "pmo_categories";
    readonly board_views: "pmo_board_views";
    readonly subtasks: "pmo_subtasks";
    readonly ticket_metadata: "pmo_ticket_metadata";
    readonly ticket_dependencies: "pmo_ticket_dependencies";
    readonly ticket_affected_paths: "pmo_ticket_affected_paths";
    readonly ticket_acceptance_criteria: "pmo_ticket_acceptance_criteria";
    readonly specs: "pmo_specs";
    readonly spec_dependencies: "pmo_spec_dependencies";
    readonly ticket_specs: "pmo_ticket_specs";
    readonly ticket_assignments: "pmo_ticket_assignments";
    readonly epics: "pmo_epics";
    readonly epic_dependencies: "pmo_epic_dependencies";
    readonly project_specs: "pmo_project_specs";
    readonly cache_metadata: "pmo_cache_metadata";
    readonly settings: "pmo_settings";
    readonly agent_work: "agent_work";
    readonly containers: "containers";
    readonly id_sequences: "id_sequences";
    readonly workflows: "pmo_workflows";
    readonly workflow_statuses: "pmo_workflow_statuses";
    readonly phases: "pmo_phases";
    readonly phase_templates: "pmo_phase_templates";
    readonly actions: "pmo_actions";
    readonly ticket_templates: "pmo_ticket_templates";
    readonly roadmaps: "pmo_roadmaps";
    readonly roadmap_projects: "pmo_roadmap_projects";
    readonly label_groups: "pmo_label_groups";
    readonly labels: "pmo_labels";
    readonly ticket_labels: "pmo_ticket_labels";
    readonly linear_issue_map: "pmo_linear_issue_map";
    readonly external_execution_map: "pmo_external_execution_map";
    readonly external_execution_links: "pmo_external_execution_links";
    readonly external_execution_prs: "pmo_external_execution_prs";
    readonly monday_item_map: "pmo_monday_item_map";
    readonly asana_task_map: "pmo_asana_task_map";
    readonly columns: "pmo_columns";
    readonly board_tickets: "pmo_board_tickets";
    readonly statuses: "pmo_statuses";
};
export declare const PMO_TABLE_SCHEMAS: {
    readonly projects: "\n    CREATE TABLE IF NOT EXISTS pmo_projects (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL,\n      template TEXT,\n      description TEXT,\n      status TEXT NOT NULL DEFAULT 'active',\n      phase_id TEXT,\n      workflow_id TEXT,\n      is_archived INTEGER NOT NULL DEFAULT 0,\n      target_date TIMESTAMP,\n      initiative_id TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (phase_id) REFERENCES pmo_phases(id) ON DELETE SET NULL,\n      FOREIGN KEY (workflow_id) REFERENCES pmo_workflows(id) ON DELETE SET NULL\n    )";
    readonly initiatives: "\n    CREATE TABLE IF NOT EXISTS pmo_initiatives (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL,\n      objective TEXT,\n      key_results TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly categories: "\n    CREATE TABLE IF NOT EXISTS pmo_categories (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL,\n      type TEXT NOT NULL CHECK (type IN ('ticket', 'status')),\n      description TEXT,\n      color TEXT,\n      position INTEGER NOT NULL DEFAULT 0,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      UNIQUE(name, type)\n    )";
    readonly workflows: "\n    CREATE TABLE IF NOT EXISTS pmo_workflows (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly workflow_statuses: "\n    CREATE TABLE IF NOT EXISTS pmo_workflow_statuses (\n      id TEXT PRIMARY KEY,\n      workflow_id TEXT NOT NULL,\n      name TEXT NOT NULL,\n      category TEXT NOT NULL,\n      position INTEGER NOT NULL DEFAULT 0,\n      color TEXT,\n      description TEXT,\n      is_default INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (workflow_id) REFERENCES pmo_workflows(id) ON DELETE CASCADE,\n      UNIQUE(workflow_id, name)\n    )";
    readonly columns: "\n    CREATE TABLE IF NOT EXISTS pmo_columns (\n      id TEXT NOT NULL,\n      project_id TEXT NOT NULL DEFAULT 'default',\n      name TEXT NOT NULL,\n      position INTEGER NOT NULL,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (project_id, id)\n    )";
    readonly tickets: "\n    CREATE TABLE IF NOT EXISTS pmo_tickets (\n      id TEXT PRIMARY KEY,\n      project_id TEXT NOT NULL DEFAULT 'default',\n      title TEXT NOT NULL,\n      description TEXT,\n      priority TEXT,\n      category TEXT,\n      status TEXT NOT NULL DEFAULT 'backlog',\n      status_id TEXT,\n      owner TEXT,\n      assignee TEXT,\n      branch TEXT,\n      spec_id TEXT,\n      epic_id TEXT,\n      labels TEXT NOT NULL DEFAULT '[]',\n      position INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      last_synced_from_spec TIMESTAMP,\n      last_synced_from_board TIMESTAMP,\n      FOREIGN KEY (project_id) REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      FOREIGN KEY (spec_id) REFERENCES pmo_specs(id) ON DELETE SET NULL,\n      FOREIGN KEY (epic_id) REFERENCES pmo_epics(id) ON DELETE SET NULL,\n      FOREIGN KEY (status_id) REFERENCES pmo_workflow_statuses(id) ON DELETE SET NULL\n    )";
    readonly board_tickets: "\n    CREATE TABLE IF NOT EXISTS pmo_board_tickets (\n      project_id TEXT NOT NULL,\n      ticket_id TEXT NOT NULL,\n      column_id TEXT NOT NULL,\n      position INTEGER NOT NULL,\n      PRIMARY KEY (project_id, ticket_id),\n      FOREIGN KEY (project_id) REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      FOREIGN KEY (ticket_id) REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      FOREIGN KEY (project_id, column_id) REFERENCES pmo_columns(project_id, id) ON DELETE CASCADE\n    )";
    readonly board_views: "\n    CREATE TABLE IF NOT EXISTS pmo_board_views (\n      id TEXT PRIMARY KEY,\n      project_id TEXT NOT NULL,\n      name TEXT NOT NULL,\n      description TEXT,\n      is_default INTEGER NOT NULL DEFAULT 0,\n      filters TEXT NOT NULL DEFAULT '{}',\n      group_by TEXT,\n      sort_by TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (project_id) REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      UNIQUE(project_id, name)\n    )";
    readonly subtasks: "\n    CREATE TABLE IF NOT EXISTS pmo_subtasks (\n      id TEXT NOT NULL,\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      title TEXT NOT NULL,\n      done INTEGER DEFAULT 0,\n      position INTEGER NOT NULL,\n      PRIMARY KEY (ticket_id, id)\n    )";
    readonly ticket_metadata: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_metadata (\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      key TEXT NOT NULL,\n      value TEXT,\n      PRIMARY KEY (ticket_id, key)\n    )";
    readonly ticket_dependencies: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_dependencies (\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE RESTRICT,\n      depends_on_ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE RESTRICT,\n      dependency_type TEXT NOT NULL DEFAULT 'blocks' CHECK (dependency_type IN ('blocks', 'relates_to', 'duplicates')),\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (ticket_id, depends_on_ticket_id, dependency_type),\n      CHECK (ticket_id != depends_on_ticket_id)\n    )";
    readonly ticket_affected_paths: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_affected_paths (\n      id INTEGER PRIMARY KEY AUTOINCREMENT,\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      path_pattern TEXT NOT NULL,\n      path_type TEXT NOT NULL DEFAULT 'file',\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly ticket_acceptance_criteria: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_acceptance_criteria (\n      id TEXT NOT NULL,\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      criterion TEXT NOT NULL,\n      verifiable INTEGER DEFAULT 1,\n      verified INTEGER DEFAULT 0,\n      verified_at TIMESTAMP,\n      verified_by TEXT,\n      position INTEGER NOT NULL DEFAULT 0,\n      PRIMARY KEY (ticket_id, id)\n    )";
    readonly specs: "\n    CREATE TABLE IF NOT EXISTS pmo_specs (\n      id TEXT PRIMARY KEY,\n      title TEXT NOT NULL,\n      status TEXT DEFAULT 'draft',\n      type TEXT,\n      tags TEXT,\n      depends_on TEXT,\n      problem TEXT,\n      solution TEXT,\n      decisions TEXT,\n      not_now TEXT,\n      ui_ux TEXT,\n      acceptance_criteria TEXT,\n      open_questions TEXT,\n      requirements_functional TEXT,\n      requirements_technical TEXT,\n      context TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly spec_dependencies: "\n    CREATE TABLE IF NOT EXISTS pmo_spec_dependencies (\n      spec_id TEXT NOT NULL REFERENCES pmo_specs(id) ON DELETE RESTRICT,\n      depends_on_spec_id TEXT NOT NULL REFERENCES pmo_specs(id) ON DELETE RESTRICT,\n      dependency_type TEXT NOT NULL DEFAULT 'depends_on' CHECK (dependency_type IN ('depends_on', 'relates_to', 'duplicates')),\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (spec_id, depends_on_spec_id, dependency_type),\n      CHECK (spec_id != depends_on_spec_id)\n    )";
    readonly ticket_specs: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_specs (\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      spec_id TEXT NOT NULL REFERENCES pmo_specs(id) ON DELETE CASCADE,\n      PRIMARY KEY (ticket_id, spec_id)\n    )";
    readonly ticket_assignments: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_assignments (\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      agent_name TEXT NOT NULL,\n      assigned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (ticket_id, agent_name)\n    )";
    readonly epics: "\n    CREATE TABLE IF NOT EXISTS pmo_epics (\n      id TEXT PRIMARY KEY,\n      project_id TEXT NOT NULL,\n      title TEXT NOT NULL,\n      description TEXT,\n      status TEXT NOT NULL DEFAULT 'active',\n      position INTEGER NOT NULL DEFAULT 0,\n      file_path TEXT,\n      spec_id TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (project_id) REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      FOREIGN KEY (spec_id) REFERENCES pmo_specs(id) ON DELETE SET NULL\n    )";
    readonly epic_dependencies: "\n    CREATE TABLE IF NOT EXISTS pmo_epic_dependencies (\n      epic_id TEXT NOT NULL REFERENCES pmo_epics(id) ON DELETE RESTRICT,\n      depends_on_epic_id TEXT NOT NULL REFERENCES pmo_epics(id) ON DELETE RESTRICT,\n      dependency_type TEXT NOT NULL DEFAULT 'blocks' CHECK (dependency_type IN ('blocks', 'relates_to', 'duplicates')),\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (epic_id, depends_on_epic_id, dependency_type),\n      CHECK (epic_id != depends_on_epic_id)\n    )";
    readonly project_specs: "\n    CREATE TABLE IF NOT EXISTS pmo_project_specs (\n      project_id TEXT NOT NULL REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      spec_id TEXT NOT NULL REFERENCES pmo_specs(id) ON DELETE CASCADE,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (project_id, spec_id)\n    )";
    readonly cache_metadata: "\n    CREATE TABLE IF NOT EXISTS pmo_cache_metadata (\n      key TEXT PRIMARY KEY,\n      value TEXT NOT NULL\n    )";
    readonly settings: "\n    CREATE TABLE IF NOT EXISTS pmo_settings (\n      key TEXT PRIMARY KEY,\n      value TEXT NOT NULL\n    )";
    readonly agent_work: "\n    CREATE TABLE IF NOT EXISTS agent_work (\n      id TEXT PRIMARY KEY,\n      ticket_id TEXT NOT NULL,\n      agent_name TEXT NOT NULL,\n      executor TEXT NOT NULL,\n      environment TEXT NOT NULL DEFAULT 'host',\n      display_mode TEXT NOT NULL DEFAULT 'terminal',\n      permission_mode TEXT NOT NULL DEFAULT 'safe',\n      status TEXT NOT NULL DEFAULT 'starting',\n      branch TEXT,\n      pid TEXT,\n      container_id TEXT,\n      session_id TEXT,\n      host TEXT,\n      log_path TEXT,\n      external_source TEXT,\n      external_key TEXT,\n      external_id TEXT,\n      external_url TEXT,\n      started_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      completed_at TIMESTAMP,\n      exit_code INTEGER,\n      error_message TEXT,\n      FOREIGN KEY (ticket_id) REFERENCES pmo_tickets(id) ON DELETE CASCADE\n    )";
    readonly containers: "\n    CREATE TABLE IF NOT EXISTS containers (\n      id TEXT PRIMARY KEY,\n      agent_name TEXT NOT NULL,\n      docker_id TEXT NOT NULL,\n      docker_name TEXT,\n      image TEXT,\n      status TEXT NOT NULL DEFAULT 'unknown',\n      current_execution_id TEXT,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      last_seen_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (agent_name) REFERENCES agents(name) ON DELETE CASCADE,\n      FOREIGN KEY (current_execution_id) REFERENCES agent_work(id) ON DELETE SET NULL\n    )";
    readonly id_sequences: "\n    CREATE TABLE IF NOT EXISTS id_sequences (\n      table_name TEXT PRIMARY KEY,\n      next_id INTEGER NOT NULL DEFAULT 1\n    )";
    readonly statuses: "\n    CREATE TABLE IF NOT EXISTS pmo_statuses (\n      id TEXT PRIMARY KEY,\n      project_id TEXT NOT NULL,\n      name TEXT NOT NULL,\n      category TEXT NOT NULL,\n      position INTEGER NOT NULL DEFAULT 0,\n      color TEXT,\n      description TEXT,\n      is_default INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      FOREIGN KEY (project_id) REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      UNIQUE(project_id, name)\n    )";
    readonly phases: "\n    CREATE TABLE IF NOT EXISTS pmo_phases (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      category TEXT NOT NULL,\n      position INTEGER NOT NULL DEFAULT 0,\n      color TEXT,\n      description TEXT,\n      is_default INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly phase_templates: "\n    CREATE TABLE IF NOT EXISTS pmo_phase_templates (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      phases TEXT NOT NULL,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly actions: "\n    CREATE TABLE IF NOT EXISTS pmo_actions (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      prompt TEXT NOT NULL,\n      end_prompt TEXT,\n      suggested_for_categories TEXT,\n      default_move_to_category TEXT,\n      modifies_code INTEGER NOT NULL DEFAULT 1,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      position INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly ticket_templates: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_templates (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      title_pattern TEXT,\n      description_template TEXT,\n      default_priority TEXT,\n      default_category TEXT,\n      default_status_id TEXT,\n      default_assignee TEXT,\n      default_owner TEXT,\n      default_labels TEXT NOT NULL DEFAULT '[]',\n      suggested_subtasks TEXT NOT NULL DEFAULT '[]',\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly label_groups: "\n    CREATE TABLE IF NOT EXISTS pmo_label_groups (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      is_exclusive INTEGER NOT NULL DEFAULT 1,\n      is_required INTEGER NOT NULL DEFAULT 0,\n      position INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly labels: "\n    CREATE TABLE IF NOT EXISTS pmo_labels (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL,\n      color TEXT,\n      description TEXT,\n      group_id TEXT REFERENCES pmo_label_groups(id) ON DELETE SET NULL,\n      position INTEGER NOT NULL DEFAULT 0,\n      is_builtin INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      UNIQUE(name, group_id)\n    )";
    readonly ticket_labels: "\n    CREATE TABLE IF NOT EXISTS pmo_ticket_labels (\n      ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      label_id TEXT NOT NULL REFERENCES pmo_labels(id) ON DELETE CASCADE,\n      PRIMARY KEY (ticket_id, label_id)\n    )";
    readonly roadmaps: "\n    CREATE TABLE IF NOT EXISTS pmo_roadmaps (\n      id TEXT PRIMARY KEY,\n      name TEXT NOT NULL UNIQUE,\n      description TEXT,\n      is_default INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n    )";
    readonly roadmap_projects: "\n    CREATE TABLE IF NOT EXISTS pmo_roadmap_projects (\n      roadmap_id TEXT NOT NULL REFERENCES pmo_roadmaps(id) ON DELETE CASCADE,\n      project_id TEXT NOT NULL REFERENCES pmo_projects(id) ON DELETE CASCADE,\n      position INTEGER NOT NULL DEFAULT 0,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (roadmap_id, project_id)\n    )";
    readonly linear_issue_map: "\n    CREATE TABLE IF NOT EXISTS pmo_linear_issue_map (\n      pmo_ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      linear_issue_id TEXT NOT NULL,\n      linear_identifier TEXT NOT NULL,\n      linear_team_key TEXT NOT NULL,\n      linear_url TEXT NOT NULL,\n      sync_direction TEXT NOT NULL DEFAULT 'inbound',\n      last_synced_at TIMESTAMP,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (pmo_ticket_id),\n      UNIQUE (linear_issue_id)\n    )";
    readonly external_execution_map: "\n    CREATE TABLE IF NOT EXISTS pmo_external_execution_map (\n      provider TEXT NOT NULL CHECK (provider IN ('linear', 'jira', 'asana', 'monday', 'pmo')),\n      external_id TEXT NOT NULL,\n      external_key TEXT,\n      canonical_url TEXT,\n      latest_state_snapshot TEXT,\n      last_synced_at TIMESTAMP,\n      last_spawned_at TIMESTAMP,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (provider, external_id)\n    )";
    readonly external_execution_links: "\n    CREATE TABLE IF NOT EXISTS pmo_external_execution_links (\n      provider TEXT NOT NULL,\n      external_id TEXT NOT NULL,\n      execution_id TEXT NOT NULL,\n      linked_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (provider, external_id, execution_id),\n      FOREIGN KEY (provider, external_id)\n        REFERENCES pmo_external_execution_map(provider, external_id)\n        ON DELETE CASCADE\n    )";
    readonly external_execution_prs: "\n    CREATE TABLE IF NOT EXISTS pmo_external_execution_prs (\n      provider TEXT NOT NULL,\n      external_id TEXT NOT NULL,\n      pr_url TEXT NOT NULL,\n      linked_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (provider, external_id, pr_url),\n      FOREIGN KEY (provider, external_id)\n        REFERENCES pmo_external_execution_map(provider, external_id)\n        ON DELETE CASCADE\n    )";
    readonly monday_item_map: "\n    CREATE TABLE IF NOT EXISTS pmo_monday_item_map (\n      pmo_ticket_id TEXT NOT NULL REFERENCES pmo_tickets(id) ON DELETE CASCADE,\n      monday_board_id TEXT NOT NULL,\n      monday_item_id TEXT NOT NULL,\n      monday_item_name TEXT NOT NULL,\n      monday_item_url TEXT,\n      sync_direction TEXT NOT NULL DEFAULT 'outbound',\n      last_synced_at TIMESTAMP,\n      created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n      PRIMARY KEY (pmo_ticket_id),\n      UNIQUE (monday_item_id)\n    )";
};
export declare const PMO_INDEXES: string;
/**
 * All PMO table creation statements combined.
 * Order matters due to foreign key dependencies.
 */
export declare const PMO_SCHEMA_SQL: string;
export declare const EXPECTED_TICKET_COLUMNS: readonly ["id", "project_id", "title", "description", "priority", "category", "status", "status_id", "owner", "assignee", "branch", "spec_id", "epic_id", "labels", "position", "created_at", "updated_at", "last_synced_from_spec", "last_synced_from_board"];
/**
 * Validate that pmo_tickets table has all expected columns.
 * Throws if columns are missing (indicates schema mismatch).
 */
export declare function validateTicketSchema(db: {
    pragma: (sql: string) => unknown;
}): void;
