export interface PostCategory {
    ID: number;
    CreatedAt: string;
    UpdatedAt: string;
    DeletedAt: string | null;
    title: string;
    slug: string;
    description: string;
    parent_id?: number;
}

export interface PostTag {
    ID: number;
    CreatedAt: string;
    UpdatedAt: string;
    DeletedAt: string | null;
    name: string;
}

export interface Post {
    ID: number;
    CreatedAt: string;
    UpdatedAt: string;
    DeletedAt: string | null;
    title: string;
    images: string; // JSON string or path
    content: string;
    slug: string;
    categories: PostCategory[];
    tags: PostTag[];
}

export interface PostResponse {
    data: Post[];
    meta: {
        page: number;
        per_page: number;
        total: number;
    };
}

export interface PostFormData {
    title: string;
    content: string;
    category_ids: number[];
    tags: string[]; // Tag names to be processed/created backend-side or IDs if selecting existing
    images: File | null;
    is_active: boolean; // Assuming there might be an active state, though not explicitly in the sample JSON, standard for CMS
}
