import type { OutputBundle } from 'rollup';
import type { ViteFrameworkCssPipelineContext } from '../shared/framework-strategy.js';
import type { ConfiguredCssSourceEntry } from './configured-css-sources.js';
import type { GenerateBundleContext } from './types.js';
import type { InternalUserDefinedOptions } from '../../../types/index.js';
export interface CreateConfiguredCssSourceRegistryOptions {
    bundleFiles: string[];
    defaultStyleOutputExtension: string;
    getCssSource: (file: string) => string | undefined;
    isWebGeneratorTarget: boolean;
    opts: InternalUserDefinedOptions;
    outDir: string;
    rootDir: string;
    runtimeState: GenerateBundleContext['runtimeState'];
    sourceRoot?: string | undefined;
}
export declare function createConfiguredCssSourceRegistry(options: CreateConfiguredCssSourceRegistryOptions): {
    explicitCssEntryFiles: string[];
    getSourceEntries: () => ConfiguredCssSourceEntry[];
    normalizeGeneratorUserRawSource: (source: string, sourceFile: string, fallbackFile?: string | undefined) => string;
    resolveMatchedSourceOutputFile: (sourceFile: string) => string | undefined;
};
export interface CreateConfiguredCssRootResolversOptions {
    bundle: OutputBundle;
    bundleFiles: string[];
    cssPipelineContext: ViteFrameworkCssPipelineContext;
    cssPipelineStrategy: GenerateBundleContext['cssPipelineStrategy'];
    currentSubpackageRoots?: Set<string> | undefined;
    defaultStyleOutputExtension: string;
    entries: ConfiguredCssSourceEntry[];
    explicitCssEntryFiles: string[];
    isWebGeneratorTarget: boolean;
    opts: InternalUserDefinedOptions;
    rootDir: string;
    shouldPreserveAppCssExtension: boolean;
    sourceRoot?: string | undefined;
}
export declare function createConfiguredCssRootResolvers(options: CreateConfiguredCssRootResolversOptions): {
    configuredTailwindV4ExplicitCssEntryFileKeysForScope: Set<string>;
    configuredTailwindV4CssSourceFileKeysForScope: Set<string>;
    hasExplicitConfiguredRootCssEntryForOutput: (outputFile: string) => boolean;
    isMiniProgramStyleOutputFile: (file: string) => boolean;
    normalizeConfiguredTailwindV4CssEntryFileKey: (file: string) => string;
    resolveConfiguredCssEntryRootInjectionTarget: (sourceFile: string | undefined, outputFile: string) => string | undefined;
    resolveConfiguredRootCssSourceStyle: (outputFile: string, entries: ConfiguredCssSourceEntry[], originalFileNames?: string[] | undefined) => {
        outputFile: string;
        rawSource: string;
        sourceFile: string;
    } | undefined;
    selectConfiguredRootCssSourceEntry: (outputFile: string, entries: ConfiguredCssSourceEntry[], originalFileNames?: string[] | undefined) => ConfiguredCssSourceEntry | undefined;
    shouldKeepCurrentRootCssOutputForConfiguredSource: (sourceFile: string | undefined, outputFile: string) => boolean;
    shouldKeepCurrentRootMiniProgramStyleOutputAsImportShell: (outputFile: string, css?: string | undefined) => boolean;
    shouldSelectConfiguredRootCssOutput: (outputFile: string) => boolean;
};
