import type { SupportedPackageManager } from '../utils/package-manager';
import type { Template } from './utils/template';
import type { Action } from '@dynatrace/openkit-js';
export type TemplateConfig = {
    version: string;
    dtApp: string;
    /** The app name without being parsed */
    name: string;
    /** This is the parsed app name that can be used as a directory */
    workspace: string;
    gatewayURL: string;
    templateName?: string;
};
/** The main function that scaffolds a new project */
export declare function createProject(options: {
    dir: string;
    environmentUrl: string;
    template: Template;
    cwd: string;
    packageManager: SupportedPackageManager;
    oauthClientId: string;
    name?: string;
    dryRun?: boolean;
    skipInstall?: boolean;
    gitRepository?: boolean;
}, rootAction?: Action): Promise<void>;
/**
 * Creates the file buffer for the app.config.json file.
 * @param config contains the content of the config object.
 */
export declare function createDtAppConfigBuffer(config: {
    [key: string]: string;
}, metadata: {
    name: string;
    version: string;
    description: string;
    appId: string;
}): Buffer;
