import type { Mastra } from '@mastra/core';
import type { SystemMessage } from '@mastra/core/llm';
import type { Workflow, WorkflowInfo } from '@mastra/core/workflows';
/**
 * Normalizes a route path to ensure consistent formatting.
 * - Removes leading/trailing whitespace
 * - Validates no path traversal (..), query strings (?), or fragments (#)
 * - Collapses multiple consecutive slashes
 * - Removes trailing slashes
 * - Ensures leading slash (unless empty)
 *
 * @param path - The route path to normalize
 * @returns The normalized path (empty string for root paths)
 * @throws Error if path contains invalid characters
 */
export declare function normalizeRoutePath(path: string): string;
export declare function getWorkflowInfo(workflow: Workflow, partial?: boolean): WorkflowInfo;
/**
 * Workflow Registry for temporarily registering additional workflows
 * that are not part of the user's Mastra instance (e.g., internal template workflows)
 */
export declare class WorkflowRegistry {
    private static additionalWorkflows;
    /**
     * Register a workflow temporarily
     */
    static registerTemporaryWorkflow(id: string, workflow: Workflow): void;
    /**
     * Register all workflows from map
     */
    static registerTemporaryWorkflows(workflows: Record<string, Workflow>, mastra?: Mastra<any, any, any, any, any, any, any, any, any>): void;
    /**
     * Get a workflow by ID from the registry (returns undefined if not found)
     */
    static getWorkflow(workflowId: string): Workflow | undefined;
    /**
     * Get all workflows from the registry
     */
    static getAllWorkflows(): Record<string, Workflow>;
    /**
     * Clean up a temporary workflow
     */
    static cleanupTemporaryWorkflow(workflowId: string): void;
    /**
     * Clean up all registered workflows
     */
    static cleanup(): void;
    /**
     * Check if a workflow ID is a valid agent-builder workflow
     */
    static isAgentBuilderWorkflow(workflowId: string): boolean;
    /**
     * Get all registered temporary workflow IDs (for debugging)
     */
    static getRegisteredWorkflowIds(): string[];
}
export declare function convertInstructionsToString(message: SystemMessage): string;
//# sourceMappingURL=utils.d.ts.map