export interface Category {
  id: number;
  name: string;
  description?: string;
  parent_id?: number;
  file_id?: number;
  created_at: string;
  updated_at: string;
}

export interface CategoryFormData {
  name: string;
  description: string;
  file_id?: number;
}

export interface CategoryFilters {
  search?: string;
  page?: number;
  limit?: number;
}

export interface CreateCategoryRequest {
  name: string;
  description?: string;
  file_id?: number;
}

export interface UpdateCategoryRequest {
  id: number;
  name: string;
  description?: string;
  file_id?: number;
}

export interface CategoriesResponse {
  categories: Category[] | null;
}

export interface CategoryResponse {
  category: Category;
}

export interface CreateCategoryResponse {
  category: Category;
}

export interface UpdateCategoryResponse {
  category: Category;
}

export interface DeleteCategoryResponse {
  message: string;
}
