import type { Floorplan, Service, FioriAppGeneratorPromptSettings, FioriAppGeneratorOptions } from '@sap-ux/fiori-app-sub-generator';
import type { TableType } from '@sap-ux/fiori-elements-writer';
import type { AppGenInfo } from '@sap-ux/fiori-generator-shared';
/**
 * Defines the external interface used to run the generator including prompts
 * This is different to <AppConfig> since not all the config needs to be provided here
 * as the prompting phase can gather additional input
 */
export interface AdaptorState {
    floorplans: Floorplan[];
    skipStepKeys: string[];
    project: {
        name?: string;
        targetFolder?: string;
        namespace?: string;
        title?: string;
        description?: string;
        ui5Theme?: string;
        ui5Version?: string;
        localUI5Version?: string;
        addFlpConfig?: boolean;
        sapux?: boolean;
        preselectedEntityName?: string;
        entityConfig?: {
            tableType?: TableType;
        };
        addCdsUi5Plugin?: boolean;
    };
    service?: Partial<Service>;
    /**
     * General information about the application - used for README and appGenInfo.json
     */
    appGenInfo?: Partial<AppGenInfo>;
    /**
     * Adaptors may control prompt settings based on external inputs
     */
    promptSettings?: FioriAppGeneratorPromptSettings;
    /**
     * Internal generator options
     */
    generatorOptions?: FioriAppGeneratorOptions;
}
export interface Adaptor {
    name: string;
    transform: (extInput: any) => Partial<AdaptorState>;
}
//# sourceMappingURL=types.d.ts.map