export type { Page, PageStatus, Hero } from "./entities/models/page";
export type { SiteSettings } from "./entities/models/site-settings";
export type { MarketingPagesRouter } from "./integrations/api/router";
export { PageNotFoundError } from "./entities/errors/page";
export { InputParseError } from "./entities/errors/common";

// Use case schemas + types
export {
  getPageBySlugInputSchema,
  getPageBySlugOutputSchema,
  type GetPageBySlugInput,
  type GetPageBySlugOutput,
  type IGetPageBySlugUseCase,
} from "./application/use-cases/get-page-by-slug.use-case";
export {
  getSiteSettingsInputSchema,
  getSiteSettingsOutputSchema,
  type GetSiteSettingsInput,
  type GetSiteSettingsOutput,
  type IGetSiteSettingsUseCase,
} from "./application/use-cases/get-site-settings.use-case";

// Controller type aliases
export type { IGetPageBySlugController } from "./interface-adapters/controllers/get-page-by-slug.controller";
export type { IGetSiteSettingsController } from "./interface-adapters/controllers/get-site-settings.controller";

// <gen:events>
// <gen:realtime-channels>
export {
  marketingPagesManifest,
  type MarketingPagesManifest,
} from "./feature.manifest";
