// Package tidbtools contains DTOs for the OPS Portal "TiDB Tools" page
// (DM, imports, backups, restores). Endpoints live under
// `/api/v1/devops/tidbtools/...` served by
// `devops/pkg/controller/tidbtools.TidbToolsController`.
//
// JSON shape contract: every DTO here is the byte-for-byte JSON shape
// consumed by `management-portal-ui/src/pages/Tenants/ClusterDetail/Tools/types.ts`.
// Keep the two in lock-step: any field rename or removal here is a
// FE-breaking change, and any field addition needs `omitempty` so the
// FE's `?` optional types stay compatible.
package tidbtools

// ListResp is the generic list envelope shared by every list endpoint.
// It mirrors `ListResponse<T>` in the FE types.
//
// Concrete list responses below embed `ListResp` indirectly by declaring
// their own `Items` / `Total` pair so swagger generation stays happy
// (swag does not yet expand Go generics in @Success annotations).
type ListResp struct {
	Total int64 `json:"total"`
}
