import type { BundleSnapshot } from '../bundle-state.js';
import type { SourceCandidateFilterOptions } from '../source-candidates.js';
import type { TailwindSourceEntry } from '../../../tailwindcss/source-scan.js';
interface CreateSubpackageSourceCandidateScopeOptions {
    cssSourceFiles?: Iterable<string> | undefined;
    getSourceCandidatesForEntries?: ((entries: TailwindSourceEntry[] | undefined, options?: SourceCandidateFilterOptions) => Set<string>) | undefined;
    getSourceCandidateSourcesForEntries?: ((entries: TailwindSourceEntry[] | undefined, options?: SourceCandidateFilterOptions) => Map<string, Set<string>>) | undefined;
    projectRoot?: string | undefined;
    rootDir: string;
    snapshot: BundleSnapshot;
    sourceRoot?: string | undefined;
    subpackageRoots?: Set<string> | undefined;
    tailwindcssBasedir?: string | undefined;
    useIncrementalMode: boolean;
}
export declare function createSubpackageSourceCandidateScope(options: CreateSubpackageSourceCandidateScopeOptions): {
    createScopedSourceCandidateGetter: (outputFile: string, cssHandlerOptions: {
        isMainChunk?: boolean | undefined;
    }) => ((entries: TailwindSourceEntry[] | undefined, filterOptions?: SourceCandidateFilterOptions) => Set<string>) | undefined;
    createScopedSourceCandidateSourceGetter: (outputFile: string, cssHandlerOptions: {
        isMainChunk?: boolean | undefined;
    }) => ((entries: TailwindSourceEntry[] | undefined, filterOptions?: SourceCandidateFilterOptions) => Map<string, Set<string>>) | undefined;
    shouldExcludeSubpackageSourceCandidates: (outputFile: string, cssHandlerOptions: {
        isMainChunk?: boolean | undefined;
    }) => boolean;
    shouldInjectCssIntoMainFromOutput: (outputFile: string, sourceFile: string, outputCssHandlerOptions: {
        isMainChunk?: boolean | undefined;
    }) => boolean;
};
export {};
