burst-generate-files
Version:
package module for generate files
50 lines (49 loc) • 1.91 kB
TypeScript
import { GetSelectedName } from './actions/getSelectedName/types';
import { CreateMarkers, SettingsMarker } from './actions/createMarkers/types';
export interface SettingCommonTypes {
pathToTemplate: string | string[];
selectDirectory?: boolean;
markers?: SettingsMarker[];
onComplete?: null | (({ init, result }: {
init: unknown;
result: unknown;
}) => void);
}
export type OutputPath = string | string[];
export interface InterfaceOutputPath {
outputPath: OutputPath;
}
export type SettingStringsReplacersCustomGen = {
replaceVar: string;
value: string;
};
export interface SettingCustomGen extends Omit<SettingCommonTypes, 'selectDirectory'>, InterfaceOutputPath {
stringsReplacers: SettingStringsReplacersCustomGen | SettingStringsReplacersCustomGen[];
}
export type OptionalSettingsCustomGen = Omit<OptionalSettingsCLIGen, 'showFullError'>;
export interface SettingCLIGenTemplate extends SettingCommonTypes, Partial<InterfaceOutputPath> {
stringsReplacers: string | string[];
}
export type SettingCLIGen = {
name: string;
templates: SettingCLIGenTemplate[];
};
export type OptionalSettingsCLIGen = {
rootPath?: string;
showFullError?: boolean;
};
export interface SettingCLIGenTemplateRequiredOutputPath extends SettingCommonTypes, InterfaceOutputPath {
stringsReplacers: string | string[];
}
export type SettingCLIGenRequiredOutputPath = {
name: string;
templates: SettingCLIGenTemplateRequiredOutputPath[];
};
export type SettingMarkersGen = Omit<CreateMarkers, 'rootPath'>;
export type OptionalSettingsMarkersGen = Partial<Pick<CreateMarkers, 'rootPath'>>;
export type MainActions = {
initSetting: SettingCustomGen | SettingCLIGenTemplateRequiredOutputPath;
setting: SettingCustomGen | SettingCLIGenTemplateRequiredOutputPath;
selectedNames: GetSelectedName | GetSelectedName[];
rootPath: string;
};