export namespace memoryQueueTool {
    export let name: string;
    export let description: string;
    export namespace parameters {
        let type: string;
        namespace properties {
            namespace action {
                let type_1: string;
                export { type_1 as type };
                let _enum: string[];
                export { _enum as enum };
                let description_1: string;
                export { description_1 as description };
            }
            namespace path {
                let type_2: string;
                export { type_2 as type };
                let description_2: string;
                export { description_2 as description };
            }
            namespace threshold {
                let type_3: string;
                export { type_3 as type };
                let description_3: string;
                export { description_3 as description };
                export let minimum: number;
                export let maximum: number;
            }
            namespace timeout {
                let type_4: string;
                export { type_4 as type };
                let description_4: string;
                export { description_4 as description };
                let minimum_1: number;
                export { minimum_1 as minimum };
                let maximum_1: number;
                export { maximum_1 as maximum };
            }
            namespace tool {
                let type_5: string;
                export { type_5 as type };
                let _enum_1: string[];
                export { _enum_1 as enum };
                let description_5: string;
                export { description_5 as description };
                let _default: string;
                export { _default as default };
            }
            namespace strategy {
                let type_6: string;
                export { type_6 as type };
                let _enum_2: string[];
                export { _enum_2 as enum };
                let description_6: string;
                export { description_6 as description };
                let _default_1: string;
                export { _default_1 as default };
            }
        }
        let required: string[];
    }
    export { execute };
}
/**
 * Main execute function for tool interface
 * @param {Record<string, unknown>} params
 * @returns {Promise<unknown>}
 */
declare function execute(params: Record<string, unknown>): Promise<unknown>;
/**
 * Load queue from file
 * @returns {{ items: Array<{path: string, tool: string, strategy: string, addedAt: string}>, createdAt: string | null, config?: { threshold: number, timeout: number } }}
 */
export function loadQueue(): {
    items: Array<{
        path: string;
        tool: string;
        strategy: string;
        addedAt: string;
    }>;
    createdAt: string | null;
    config?: {
        threshold: number;
        timeout: number;
    };
};
/**
 * Save queue to file
 * @param {{ items: Array<{path: string, tool: string, strategy: string, addedAt: string}>, createdAt: string | null }} data
 */
export function saveQueue(data: {
    items: Array<{
        path: string;
        tool: string;
        strategy: string;
        addedAt: string;
    }>;
    createdAt: string | null;
}): void;
/**
 * Add path to queue with deduplication
 * @param {string} path - Module path to update
 * @param {{ tool?: string, strategy?: string }} options
 * @returns {{ queued: boolean, queueSize: number, willFlush: boolean, message: string }}
 */
export function addToQueue(path: string, options?: {
    tool?: string;
    strategy?: string;
}): {
    queued: boolean;
    queueSize: number;
    willFlush: boolean;
    message: string;
};
/**
 * Get current queue status
 * @returns {{ queueSize: number, threshold: number, items: Array, timeoutMs: number | null, createdAt: string | null }}
 */
export function getQueueStatus(): {
    queueSize: number;
    threshold: number;
    items: any[];
    timeoutMs: number | null;
    createdAt: string | null;
};
/**
 * Flush queue - execute batch update
 * @returns {Promise<{ success: boolean, processed: number, results: Array, errors: Array }>}
 */
export function flushQueue(): Promise<{
    success: boolean;
    processed: number;
    results: any[];
    errors: any[];
}>;
/**
 * Configure queue settings
 * @param {{ threshold?: number, timeout?: number }} settings
 * @returns {{ success: boolean, config: { threshold: number, timeout: number } }}
 */
export function configureQueue(settings: {
    threshold?: number;
    timeout?: number;
}): {
    success: boolean;
    config: {
        threshold: number;
        timeout: number;
    };
};
/**
 * Schedule timeout for auto-flush
 */
export function scheduleTimeout(): void;
/**
 * Clear scheduled timeout
 */
export function clearScheduledTimeout(): void;
/**
 * Check if timeout has expired and auto-flush if needed
 * @returns {Promise<{ expired: boolean, flushed: boolean, result?: object }>}
 */
export function checkTimeout(): Promise<{
    expired: boolean;
    flushed: boolean;
    result?: object;
}>;
export const DEFAULT_THRESHOLD: 5;
export const DEFAULT_TIMEOUT_SECONDS: 300;
export const QUEUE_FILE_PATH: string;
export {};
//# sourceMappingURL=memory-update-queue.d.ts.map