import type { ISODate } from "../../common/CustomTypes/ISODate";
import type { Template } from "../TemplateManager/Template";
import type { Project as IProject } from "../Types";
import type { ProjectId } from "./Common";
/**
  * Creates a project from the provided template
  * @param params Project creation params
  */
export declare function createProject({ path, name, id, template, force, description, created, }: CreateProjectParams): Promise<IProject>;
/**
 * Parameters for creation project from template
 */
export interface CreateProjectParams {
    /**
   * The directory in which the new project should be created
   */
    path: string;
    /**
   * The name for the initialized project
   */
    name: string;
    /**
   * The Id for the initialized project
   */
    id: ProjectId;
    /**
   * The template to initialize the project from
   */
    template: Template<string>;
    /**
   * Continue even if some of the templates files already exists
   */
    force?: boolean;
    /**
   * Description of the generated project
   */
    description?: string;
    /**
   * Created date of the project
   */
    created?: ISODate;
}
