import type { v2, ViewTemplateType } from '@sap/ux-specification-types'; import { type IdGeneratorFunction } from '@sap-ux/fe-fpm-writer'; export declare enum ViewTypes { XML = "xml", HTML = "html", JSON = "json" } export declare const CONFIG: { "AnalyticalTableColumnsExtension.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; "fragment.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; "GridTableColumnsExtension.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; "ResponsiveTableColumnsExtension.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; "TreeTableColumnsExtension.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; "view.xml": { getData: (generateId: IdGeneratorFunction) => { ids: Record; }; }; }; /** * Method which reads passed template and renders it using passed template object. * * @param {string} templatePath - Path to template. * @param {{ [key: string]: string }} templateData - Template data object. * @param {IdGeneratorFunction} generateId - function to generate ids for new entries in the fragment. * @returns {string} the rendered template's string */ export declare const renderTemplate: (templatePath: string, templateData: { [key: string]: string | boolean; }, generateId?: IdGeneratorFunction) => string; /** * Method which reads passed template and renders it using passed template object. * * @param {string} name - View's name. * @param {string} namespace - Application namespace. * @param fcl - Indicates whether the Flexible Column Layout (FCL) template should be used. * @param newControllerRouting - Specifies if the new controller routing should be applied. * @returns {string} the rendered template's string */ export declare const getControllerContent: (name: string, namespace: string, fcl?: boolean, newControllerRouting?: boolean) => string; /** * Method which reads passed template and renders it using passed template object. * * @param {string} name - View's name. * @param {string} namespace - Application namespace. * @param {ViewTypes} sourceType - View's source type like XML, HTML, JSON or JS. * @param {IdGeneratorFunction} generateId - function to generate ids for new entries in the fragment. * @param {boolean} [controller] - Generate controller. * @param {boolean} [page] - Is view should contains page structure or not - page structure uses 'sap.m.App' in view template. * @returns {string} the rendered template's string */ export declare const getViewContent: (name: string, namespace: string, sourceType: ViewTypes, generateId: IdGeneratorFunction, controller?: boolean, page?: boolean) => string; /** * Method which reads template for fragment and returns rendered result of fragment. * * @param {string} name - View's name. * @param {string} namespace - Application namespace. * @param {ViewTypes} sourceType - View's source type like XML, HTML, JSON or JS. * @param {IdGeneratorFunction} generateId - function to generate ids for new entries in the fragment. * @param {boolean} handler - JS handler. * @returns {string} the rendered template's string */ export declare const getFragmentContent: (name: string, namespace: string, sourceType: ViewTypes, generateId: IdGeneratorFunction, handler?: boolean) => string; /** * Method which reads passed template and renders it using passed template object. * * @returns {string} the rendered template's string */ export declare const getFragmentJsContent: () => string; /** * Method which reads the template for a single column extension that shall be added to a fragment. * * @param column - data (from config) to be inserted in the template * @param template - The type of view template (e.g., XML, HTML, JSON). * @param {IdGeneratorFunction} generateId - function to generate ids for new entries in the fragment. * @returns {string} the rendered template's string */ export declare const getSingleColumnContent: (column: v2.TableCustomColumn, template: ViewTemplateType, generateId: IdGeneratorFunction) => string; /** * Method which reads the template for a column extension fragment and returns rendered result of fragment. * * @param customColumns - array of all column extensions' data * @param templateType - The type of view template (e.g., XML, HTML, JSON). * @param {IdGeneratorFunction} generateId - function to generate ids for new entries in the fragment. * @returns {string} the rendered template's string */ export declare const getColumnFragmentContent: (customColumns: v2.TableCustomColumns, templateType: ViewTemplateType, generateId: IdGeneratorFunction) => string; /** * Creates the content for a ResponsiveTableCellsExtension fragment. * * @param customColumns - list of custom columns; for each of them a dummy entry gets created in the view content. * @param generateId - function to generate ids for new entries in the fragment. * @returns {string} the rendered template's string */ export declare const getResponsiveTableCellsFragment: (customColumns: v2.TableCustomColumns, generateId: IdGeneratorFunction) => string; /** * Method to construct full name of view or fragment. * * @param {string} name Shorten name of view or fragment. * @param {boolean} isFragment Is fragment or view. * @param {ViewTypes} viewType type of view or fragment. * @returns {string} Full path of view or fragment name. */ export declare function getViewFileName(name: string, isFragment: boolean, viewType?: ViewTypes): string; //# sourceMappingURL=view-controller-generator.d.ts.map