import { WidgetConfig } from './widget.model';

export type SectionViewport = 'desktop' | 'tablet' | 'mobile';

export type SectionLayoutStrategy = 'stack' | 'grid' | 'hero' | 'carousel' | 'split';

export interface SectionVisibilityConfig {
  desktop?: boolean;
  tablet?: boolean;
  mobile?: boolean;
}

export interface SectionLayoutConfig {
  strategy?: SectionLayoutStrategy;
  columns?: number;
  gap?: string;
  align?: 'start' | 'center' | 'end' | 'stretch';
}

export interface SectionConfig {
  id: string;
  type: string;
  order: number;
  layout?: SectionLayoutConfig;
  visibility?: SectionVisibilityConfig;
  widgets: WidgetConfig[];
  featureFlag?: string;
  visible?: boolean;
}
