/**
 * Epic operations for PMO.
 */
import { Epic, EpicFilter, Ticket } from '../types.js';
import { StorageContext } from './types.js';
export declare class EpicStorage {
    private ctx;
    constructor(ctx: StorageContext);
    /**
     * Create a new epic.
     */
    createEpic(projectId: string, epic: Partial<Epic>): Promise<Epic>;
    /**
     * Get an epic by ID.
     */
    getEpic(id: string): Promise<Epic | null>;
    /**
     * List epics with optional filters.
     */
    listEpics(projectId: string, filter?: EpicFilter): Promise<Epic[]>;
    /**
     * Reorder an epic to a new position.
     */
    reorderEpic(projectId: string, epicId: string, newPosition: number): Promise<Epic>;
    /**
     * Update an epic.
     */
    updateEpic(id: string, changes: Partial<Epic>): Promise<Epic>;
    /**
     * Delete an epic.
     */
    deleteEpic(id: string): Promise<void>;
    /**
     * Get tickets for an epic.
     */
    getTicketsForEpic(projectId: string, epicId: string): Promise<Ticket[]>;
    /**
     * Link a ticket to an epic.
     */
    linkTicketToEpic(ticketId: string, epicId: string): Promise<void>;
    /**
     * Unlink a ticket from its epic.
     */
    unlinkTicketFromEpic(ticketId: string): Promise<void>;
    private rowToEpic;
}
