declare namespace Api {
  /** 通用类型 */
  namespace Common {
    /** 分页参数 */
    interface PaginationParams {
      /** 当前页码 */
      current: number
      /** 每页条数 */
      size: number
      /** 总条数 */
      total: number
    }

    /** 分页查询参数 */
    interface PageParams {
      Page?: number
      PageSize?: number
    }

    /** 通用搜索参数 */
    type CommonSearchParams = Pick<PaginationParams, 'current' | 'size'>

    /** 分页响应基础结构 */
    interface PaginatedResponse<T = any> {
      records: T[]
      current: number
      size: number
      total: number
    }

    /** 后端标准分页结果 */
    interface PageResult<T = any> {
      items: T[]
      page: number
      pageSize: number
      totalCount: number
      totalPages: number
    }

    /** 启用状态 */
    type EnableStatus = '1' | '2'
  }
}
