import { createTsTemplateFile } from '@baseplate-dev/core-generators';
import path from 'node:path';
const componentsButton = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-button',
    projectExports: { Button: {} },
    referencedGeneratorTemplates: { constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/button.tsx'),
    },
    variables: {},
});
const componentsDivider = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-divider',
    projectExports: { Divider: {} },
    referencedGeneratorTemplates: { constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/divider.tsx'),
    },
    variables: {},
});
const componentsHeading = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-heading',
    projectExports: { Heading: {} },
    referencedGeneratorTemplates: { constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/heading.tsx'),
    },
    variables: {},
});
const componentsIndex = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-index',
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/index.ts'),
    },
    variables: {},
});
const componentsLayout = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-layout',
    projectExports: { EmailLayout: {} },
    referencedGeneratorTemplates: { componentsDivider: {}, constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/layout.tsx'),
    },
    variables: {},
});
const componentsLink = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-link',
    referencedGeneratorTemplates: { constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/link.tsx'),
    },
    variables: {},
});
const componentsSection = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-section',
    projectExports: { Section: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/section.tsx'),
    },
    variables: {},
});
const componentsText = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'components-text',
    projectExports: { Text: {} },
    referencedGeneratorTemplates: { constantsTheme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/components/text.tsx'),
    },
    variables: {},
});
const constantsTheme = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'constants-theme',
    projectExports: { theme: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/constants/theme.ts'),
    },
    variables: {},
});
const emailsIndex = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'emails-index',
    source: {
        path: path.join(import.meta.dirname, '../templates/src/emails/index.ts'),
    },
    variables: { TPL_EMAIL_TEMPLATES: {} },
});
const emailsTest = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'emails-test',
    referencedGeneratorTemplates: {
        componentsHeading: {},
        componentsLayout: {},
        componentsText: {},
        typesEmailComponent: {},
    },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/emails/test.email.tsx'),
    },
    variables: {},
});
const index = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'index',
    source: {
        path: path.join(import.meta.dirname, '../templates/src/index.ts'),
    },
    variables: {},
});
const servicesRenderEmail = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'services-render-email',
    projectExports: { renderEmail: { isTypeOnly: false } },
    referencedGeneratorTemplates: { typesEmailComponent: {} },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/services/render-email.service.tsx'),
    },
    variables: {},
});
const typesEmailComponent = createTsTemplateFile({
    fileOptions: { kind: 'singleton' },
    group: 'main',
    importMapProviders: {},
    name: 'types-email-component',
    projectExports: {
        defineEmail: { isTypeOnly: false },
        DefineEmailOptions: { isTypeOnly: true },
        EmailComponent: { isTypeOnly: true },
    },
    source: {
        path: path.join(import.meta.dirname, '../templates/src/types/email-component.types.ts'),
    },
    variables: {},
});
export const mainGroup = {
    componentsButton,
    componentsDivider,
    componentsHeading,
    componentsIndex,
    componentsLayout,
    componentsLink,
    componentsSection,
    componentsText,
    constantsTheme,
    emailsIndex,
    emailsTest,
    index,
    servicesRenderEmail,
    typesEmailComponent,
};
export const EMAIL_TRANSACTIONAL_LIB_TEMPLATES = { mainGroup };
//# sourceMappingURL=typed-templates.js.map