import type { TailwindResolvedSource, WeappTailwindcssGenerateOptions, WeappTailwindcssGenerateResult } from '../generator/index.js';
export type TailwindGenerationPoolChange = {
    type: 'all';
} | {
    type: 'dependencies';
    paths?: Iterable<string> | undefined;
} | {
    type: 'source';
    source: TailwindResolvedSource;
};
export declare class TailwindGenerationSessionPool {
    private readonly generators;
    private disposed;
    generate(source: TailwindResolvedSource, options?: WeappTailwindcssGenerateOptions): Promise<WeappTailwindcssGenerateResult>;
    validateCandidates(source: TailwindResolvedSource, candidates: Iterable<string>): Promise<Set<string>>;
    invalidate(change: TailwindGenerationPoolChange): void;
    dispose(): void;
    get size(): number;
    private getGenerator;
}
export declare function getTailwindGenerationSessionPool(owner: object): TailwindGenerationSessionPool;
export declare function disposeTailwindGenerationSessionPool(owner: object): void;
