import { Server as SocketIOServer } from 'socket.io';
import { DatabaseManager } from '../database-manager.js';
import type { Project, Workspace, Goal, Task, Session, ProjectStats } from '../../shared/types.js';
export declare class OrchestryTools {
    private dbManager;
    private io;
    private currentProjectId;
    private currentDb;
    constructor(dbManager: DatabaseManager, io: SocketIOServer);
    private getCurrentDatabase;
    private switchToProject;
    getToolDefinitions(): ({
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                name: {
                    type: string;
                    description: string;
                };
                description: {
                    type: string;
                    description: string;
                };
                projectId?: undefined;
                workspaceId?: undefined;
                title?: undefined;
                goalId?: undefined;
                priority?: undefined;
                assigneeId?: undefined;
                taskId?: undefined;
                status?: undefined;
                query?: undefined;
            };
            required: string[];
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                name?: undefined;
                description?: undefined;
                projectId?: undefined;
                workspaceId?: undefined;
                title?: undefined;
                goalId?: undefined;
                priority?: undefined;
                assigneeId?: undefined;
                taskId?: undefined;
                status?: undefined;
                query?: undefined;
            };
            required?: undefined;
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                projectId: {
                    type: string;
                    description: string;
                };
                name?: undefined;
                description?: undefined;
                workspaceId?: undefined;
                title?: undefined;
                goalId?: undefined;
                priority?: undefined;
                assigneeId?: undefined;
                taskId?: undefined;
                status?: undefined;
                query?: undefined;
            };
            required: string[];
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                workspaceId: {
                    type: string;
                    description: string;
                };
                title: {
                    type: string;
                    description: string;
                };
                description: {
                    type: string;
                    description: string;
                };
                name?: undefined;
                projectId?: undefined;
                goalId?: undefined;
                priority?: undefined;
                assigneeId?: undefined;
                taskId?: undefined;
                status?: undefined;
                query?: undefined;
            };
            required: string[];
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                goalId: {
                    type: string;
                    description: string;
                };
                title: {
                    type: string;
                    description: string;
                };
                description: {
                    type: string;
                    description: string;
                };
                priority: {
                    type: string;
                    enum: string[];
                    description: string;
                };
                assigneeId: {
                    type: string;
                    description: string;
                };
                name?: undefined;
                projectId?: undefined;
                workspaceId?: undefined;
                taskId?: undefined;
                status?: undefined;
                query?: undefined;
            };
            required: string[];
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                taskId: {
                    type: string;
                    description: string;
                };
                status: {
                    type: string;
                    enum: string[];
                    description: string;
                };
                name?: undefined;
                description?: undefined;
                projectId?: undefined;
                workspaceId?: undefined;
                title?: undefined;
                goalId?: undefined;
                priority?: undefined;
                assigneeId?: undefined;
                query?: undefined;
            };
            required: string[];
        };
    } | {
        name: string;
        description: string;
        inputSchema: {
            type: string;
            properties: {
                query: {
                    type: string;
                    description: string;
                };
                status: {
                    type: string;
                    enum: string[];
                    description: string;
                };
                priority: {
                    type: string;
                    enum: string[];
                    description: string;
                };
                name?: undefined;
                description?: undefined;
                projectId?: undefined;
                workspaceId?: undefined;
                title?: undefined;
                goalId?: undefined;
                assigneeId?: undefined;
                taskId?: undefined;
            };
            required: string[];
        };
    })[];
    executeTool(name: string, args: any): Promise<{
        success: boolean;
        projects: {
            id: string;
            name: string;
            description: string;
            createdAt: string;
            lastAccessed: string;
            isActive: boolean;
        }[];
        currentProject: string | null;
        message?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        message: string;
        projectId: any;
        projects?: undefined;
        currentProject?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        project: {
            id: string;
            name: string;
            description: string;
            createdAt: string;
            lastAccessed: string;
            isActive: boolean;
        } | undefined;
        projectId: string;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        workspaces: Workspace[];
        projectId: string | null;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        project?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        workspace: Workspace;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        goal: Goal;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        task: Task;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        task: void;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        project: Project | null;
        currentProjectId: string | null;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        projectId?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        stats: ProjectStats | null;
        projectId: string | null;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        tasks: Task[];
        count: number;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        session?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        session: Session;
        message: string;
        projects?: undefined;
        currentProject?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        sessions?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        sessions: Session[];
        count: number;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        session?: undefined;
        error?: undefined;
    } | {
        success: boolean;
        error: string;
        projects?: undefined;
        currentProject?: undefined;
        message?: undefined;
        projectId?: undefined;
        project?: undefined;
        workspaces?: undefined;
        workspace?: undefined;
        goal?: undefined;
        task?: undefined;
        currentProjectId?: undefined;
        stats?: undefined;
        tasks?: undefined;
        count?: undefined;
        session?: undefined;
        sessions?: undefined;
    }>;
    private getProjectIdFromDb;
}
//# sourceMappingURL=index.d.ts.map