import type File from 'vinyl';
import type { getCompilerContext } from '../../../../context/index.js';
import type { TailwindRuntimeState } from '../../../../tailwindcss/runtime.js';
import type { CreateJsHandlerOptions, IStyleHandlerOptions, ITemplateHandlerOptions, JsModuleGraphOptions } from '../../../../types/index.js';
type DebugFunction = (formatter: unknown, ...args: unknown[]) => void;
type RuntimeRefreshOptions = boolean | {
    forceRefresh?: boolean;
    forceCollect?: boolean;
    clearCache?: boolean;
};
export interface GulpFileTransformContext {
    cache: ReturnType<typeof getCompilerContext>['cache'];
    createRuntimeSetHash: (rawSource: string, nextRuntimeSet: Set<string>, sourceTraceSignature?: string, sourceCandidateSignature?: string, outputSignature?: string) => string;
    debug: DebugFunction;
    generatedCssPreflightModeByFile: Map<string, {
        inject: boolean;
        preserve: boolean;
    }>;
    getCompilationDependencyRevision: (scopeId: string) => number;
    getSourceCandidateGetter: () => ((entries?: unknown) => Set<string>) | undefined;
    getSourceCandidateSourceGetter: () => ((entries?: unknown) => Map<string, Set<string>>) | undefined;
    getRuntimeSet: () => Set<string>;
    gulpProcessCacheKeys: Set<string>;
    opts: ReturnType<typeof getCompilerContext>;
    refreshGulpV4SourceCandidates: (forceRefresh?: boolean) => Promise<((entries?: unknown) => Set<string>) | undefined>;
    refreshRuntimeSet: (options?: RuntimeRefreshOptions) => Promise<Set<string>>;
    refreshRuntimeSetForSource: (file: File, rawSource: string, type: 'html' | 'js') => Promise<Set<string>>;
    registerAutoCssSource: (file: File, rawSource: string) => Promise<boolean>;
    rememberCompilationScope: (sourceFile: string, scopeId: string) => void;
    resolveGulpStyleOutputExtension: (file: File) => string | undefined;
    resolveGulpTransformTimingDetails: (phase: string) => unknown;
    resolveModuleGraphOptions: (moduleGraph?: JsModuleGraphOptions) => JsModuleGraphOptions;
    resolveWxmlHandlerOptions: (options?: Partial<ITemplateHandlerOptions>) => Partial<ITemplateHandlerOptions>;
    resolveWxssFileHandlerOptions: (file: File, rawSource: string, options?: Partial<IStyleHandlerOptions>) => Partial<IStyleHandlerOptions>;
    resolveWxssUserHandlerOptions: (options?: Partial<IStyleHandlerOptions>) => Partial<IStyleHandlerOptions>;
    runtimeState: TailwindRuntimeState;
}
export declare function createGulpFileTransforms(context: GulpFileTransformContext): {
    adaptWxss: (options?: Partial<IStyleHandlerOptions>) => import("node:stream").Transform;
    generateWxss: (options?: Partial<IStyleHandlerOptions>) => import("node:stream").Transform;
    transformWxss: (options?: Partial<IStyleHandlerOptions>) => import("node:stream").Transform;
    transformWxml: (options?: Partial<ITemplateHandlerOptions>) => import("node:stream").Transform;
    transformJs: (options?: Partial<CreateJsHandlerOptions>) => import("node:stream").Transform;
};
export {};
