/**
 * Blog/Publishing Data Domain Example
 *
 * This file demonstrates how to create a comprehensive blog/publishing data domain
 * using the API Client Core modeling system. It follows the business-first approach
 * and demonstrates proper use of namespaces, models, entities, properties,
 * associations, and semantic annotations.
 *
 * The example includes:
 * - Content Management with posts, pages, and media
 * - User Management with authors, editors, and subscribers
 * - Publishing Workflow with drafts, reviews, and publication
 * - Social Features with comments, likes, and sharing
 * - Analytics and SEO with metadata and tracking
 * - Multi-tenant support for multiple blogs/publications
 *
 * @example
 * ```typescript
 * import { createBlogDomain } from './blog-domain.js'
 *
 * const domain = createBlogDomain()
 * console.log('Blog domain created with', domain.graph.nodeCount(), 'nodes')
 * ```
 */
import { DataDomain } from '../../../DataDomain.js';
import type { CreateTemplateOptions } from '../../types.js';
/**
 * Creates a comprehensive blog/publishing data domain following domain-driven design principles.
 *
 * This function demonstrates the proper hierarchy and organization for a publishing platform:
 * 1. Creates the root DataDomain for the publishing platform
 * 2. Organizes functionality into logical namespaces (Content, Users, Publishing, etc.)
 * 3. Groups related entities into models within each namespace
 * 4. Defines entities with proper semantic annotations for publishing workflows
 * 5. Establishes associations with appropriate cardinality for content relationships
 *
 * @returns A fully configured DataDomain with all blog/publishing entities and relationships
 */
export default function createBlogDomain(options?: CreateTemplateOptions): DataDomain;
//# sourceMappingURL=blog-domain.d.ts.map