interface Option<T = string | number> {
  label: string;
  value: T;
}

interface OptionWithCount<T = number | string> extends Option<T> {
  count: number;
}

interface ResWrapper<T = any> {
  code: number;
  message: string;
  data: T;
}

interface ErrorResponse {
  code: number;
  message: string;
}

type FormSearchParams<T = any> = Partial<T> & {
  page?: number;
  size?: number;
  current?: number;
  sequence?: { prop: string | null; order: string | null };
};

interface IPageConfig {
  total: number;
  size: number;
  page: number;
}
