export interface SandboxKitSourceOptions {
    /**
     * The modules whose exports are the kit's components: files (`resources/js/genui/kit.ts`), globs
     * (`inertia/components/ui/*.tsx`), directories (`src/components/ui`) or packages
     * (`@mui/material`, `react-bootstrap`). Default: the first `components/ui` folder.
     */
    components?: string | readonly string[];
    /** A module whose default export wraps the model's App (`({ children }) => <ThemeProvider…>`). */
    wrapper?: string;
}
/** Throws a migration message when options from before 0.75 are passed. */
export declare function assertNoLegacyKitOptions(options: object, where: string): void;
/** Where a shadcn `components.json` puts `ui` by default, per framework layout. */
export declare const DEFAULT_KIT_DIRS: readonly ['inertia/components/ui', 'resources/js/components/ui', 'src/components/ui', 'app/components/ui', 'components/ui'];
/** A glob as a regular expression over `/`-separated paths: `**`, `*`, `?`, `{a,b}`. */
export declare function globToRegExp(glob: string): RegExp;
/** The files matching `globs` under `root`, sorted, absolute. Test and story files are left out. */
export declare function globFiles(root: string, globs: string | readonly string[]): string[];
/** What the kit is made of. */
export interface SandboxKitFiles {
    /** Every local file whose exports are kit components (what the docs read, and what is watched). */
    files: string[];
    /** Package specifiers whose exports are kit components (`@mui/material`). */
    packages: string[];
    /** The wrapper module (absolute path or package specifier), when there is one. */
    wrapper?: string;
    /** Directories to watch for changes. */
    dirs: string[];
    /** `components` entries that matched nothing (what the plugin warns about). */
    missing?: string[];
}
/** The wrapper: a file (relative to the root) or a package specifier. Throws when it is neither. */
export declare function resolveSandboxKitWrapper(root: string, wrapper: string | undefined): string | undefined;
/**
 * Resolve the kit's modules. `null` when there is nothing to build — no `components` match, none of
 * the {@link DEFAULT_KIT_DIRS} exists, and there is no `wrapper`.
 */
export declare function resolveSandboxKitFiles(root: string, options: SandboxKitSourceOptions): SandboxKitFiles | null;
//# sourceMappingURL=files.d.ts.map