import type { TicketService } from '../interfaces/TicketService.js';
import type { GitService } from '../interfaces/GitService.js';
import type { Ticket, CreateTicketOptions } from '../../common/types.js';
export declare class LocalTicketService implements TicketService {
    private gitService?;
    private basePath;
    private isRepoCache;
    constructor(basePath?: string, gitService?: GitService | undefined);
    createTicket(title: string, options?: CreateTicketOptions): Promise<Ticket>;
    private ensureDirectoryStructure;
    private readConfig;
    private updateConfig;
    private generateFileContent;
    /**
     * Cached Git repository check for performance optimization
     */
    private isGitRepository;
    /**
     * Common file move operation with Git integration and fallback
     * Reduces code duplication between moveTicketState and undoTicket
     */
    private moveFileWithGitIntegration;
    listTickets(options?: {
        status?: string;
        priority?: string;
    }): Promise<Ticket[]>;
    getTicket(id: string): Promise<Ticket | null>;
    /**
     * Generic method to move tickets between states
     * Reduces code duplication for state transitions
     */
    private moveTicketState;
    startTicket(id: string): Promise<void>;
    completeTicket(id: string): Promise<void>;
    undoTicket(id: string): Promise<void>;
    deleteTicket(id: string): Promise<void>;
}
