ruch
Version:
Revolutionary React TypeScript CLI with hexagonal architecture & AI-powered development assistance. Create maintainable, scalable applications with domain-driven design and integrated AI tooling.
42 lines • 1.53 kB
TypeScript
import type { DomainGenerationOptions, GeneratedFile } from '../templates/domains';
export interface Logger {
info(message: string): void;
success(message: string): void;
error(message: string): void;
log(message: string): void;
}
export interface PathUtils {
getDomainPath(domainName: string): string;
getDomainsBasePath(): string;
validateDomainName(name: string): boolean;
}
export interface DomainTemplate {
getIndexTemplate(domainName: string): string;
getTypesTemplate(domainName: string): string;
getApiTemplate(domainName: string): string;
getServicesTemplate(domainName: string): string;
getQueriesTemplate(domainName: string): string;
getStoreTemplate(domainName: string): string;
getUiTemplate(domainName: string): string;
getServicesTestTemplate(domainName: string): string;
getApiTestTemplate(domainName: string): string;
getQueriesTestTemplate(domainName: string): string;
getStoreTestTemplate(domainName: string): string;
getUiTestTemplate(domainName: string): string;
getUiIndexTemplate(domainName: string): string;
}
export interface DomainServices {
logger: Logger;
pathUtils: PathUtils;
generateDomainFiles: (domainName: string, options: DomainGenerationOptions) => GeneratedFile[];
}
export interface Config {
domainsDir: string;
templateDefaults: {
withUi: boolean;
withStore: boolean;
withQueries: boolean;
withApi: boolean;
};
}
//# sourceMappingURL=interfaces.d.ts.map