import type { Editor } from 'mem-fs-editor'; import type { UI5, Ui5App } from './types.js'; import type { UI5Config } from '@sap-ux/ui5-config'; import type { ProjectType } from '@sap-ux/project-access'; /** * Input required to enable optional features. */ export interface FeatureInput { ui5App: { app: { id: string; baseComponent?: string; projectType?: ProjectType; }; ui5?: Partial; }; fs: Editor; basePath: string; tmplPath: string; ui5Configs: UI5Config[]; } /** * Enable typescript for the given input. * * @param input Input required to enable the optional typescript features * @param keepOldComponent if set to true then the old Component.js will be renamed but kept. */ export declare function enableTypescript(input: FeatureInput, keepOldComponent?: boolean): Promise; /** * Enable npm module import for the given input. * * @param input Input required to enable the optional npm modules import */ export declare function enableNpmPackageConsumption(input: FeatureInput): Promise; /** * Check if the ui5 app config requires optional features to be enabled and if yes, enable them. * * @param ui5App ui5 app config * @param fs reference to the mem-fs instance * @param basePath project base path * @param tmplPath template basepath * @param ui5Configs available UI5 configs */ export declare function applyOptionalFeatures(ui5App: Ui5App, fs: Editor, basePath: string, tmplPath: string, ui5Configs: UI5Config[]): Promise; /** * Adds eslint configuration to a project. * * @param basePath - base path to be used for adding the config * @param fs - file system reference */ export declare function addEslintFeature(basePath: string, fs: Editor): Promise; /** * Generates the resource URL based on the project type and ui5 framework details. * * @param {boolean} isEdmxProjectType Indicates if the project type is Edmx or CAP. * @param {string} [frameworkUrl] URL of the ui5 framework. * @param {string} [version] version of the ui5 framework. * @returns {string} - The constructed resource URL based on project type. */ export declare function getTemplateOptions(isEdmxProjectType: boolean, frameworkUrl?: string, version?: string): string; //# sourceMappingURL=options.d.ts.map