import { PackageManager, Tree } from '@nx/devkit';
import { Linter, LinterType } from '../../utils/lint';
interface Schema {
    directory: string;
    name: string;
    appName?: string;
    skipInstall?: boolean;
    style?: string;
    preset: string;
    defaultBase: string;
    framework?: string;
    docker?: boolean;
    js?: boolean;
    nextAppDir?: boolean;
    nextSrcDir?: boolean;
    linter?: Linter | LinterType;
    bundler?: 'vite' | 'webpack';
    standaloneApi?: boolean;
    routing?: boolean;
    useReactRouter?: boolean;
    packageManager?: PackageManager;
    unitTestRunner?: 'jest' | 'vitest' | 'none';
    e2eTestRunner?: 'cypress' | 'playwright' | 'detox' | 'jest' | 'none';
    ssr?: boolean;
    serverRouting?: boolean;
    prefix?: string;
    useGitHub?: boolean;
    nxCloud?: 'yes' | 'skip' | 'circleci' | 'github';
    formatter?: 'none' | 'prettier';
    workspaces?: boolean;
    workspaceGlobs?: string | string[];
    useProjectJson?: boolean;
}
export interface NormalizedSchema extends Schema {
    presetVersion?: string;
    isCustomPreset: boolean;
    nxCloudToken?: string;
    workspaceGlobs?: string[];
}
export declare function newGenerator(tree: Tree, opts: Schema): Promise<() => Promise<void>>;
export default newGenerator;
