/**
 * Chase-Lev Work-Stealing Deque
 *
 * Lock-free deque for efficient work-stealing scheduling.
 * - Owner pushes/pops from bottom (LIFO for cache locality)
 * - Thieves steal from top (FIFO for fairness)
 *
 * Based on: "Dynamic Circular Work-Stealing Deque" (Chase & Lev, 2005)
 */
import { TaskPriority } from "../agents/concurrency.js";
export interface WorkItem<T> {
    task: T;
    priority: TaskPriority;
    enqueuedAt: number;
}
/**
 * Work-Stealing Deque (Chase-Lev)
 */
export declare class WorkStealingDeque<T> {
    private top;
    private bottom;
    private array;
    constructor(initialCapacity?: number);
    /**
     * Push item to bottom (owner only)
     * LIFO for owner = better cache locality
     */
    push(item: WorkItem<T>): void;
    /**
     * Pop item from bottom (owner only)
     * LIFO for owner = better cache locality
     */
    pop(): WorkItem<T> | null;
    /**
     * Steal item from top (thieves)
     * FIFO for thieves = better fairness
     */
    steal(): WorkItem<T> | null;
    /**
     * Get current size (approximate, not thread-safe)
     */
    size(): number;
    /**
     * Check if empty
     */
    isEmpty(): boolean;
}
