Array of location identifiers (e.g., ['slimview1', 'dashboard']) */ public function get_locations(): array; /** * Get the CSS classes for this report container. * * @return array Array of CSS class names */ public function get_classes(): array; /** * Get the tooltip/help text for this report. * * @return string|null Tooltip HTML or null if no tooltip */ public function get_tooltip(): ?string; /** * Check if the current user can view this report. * * @return bool True if user has permission to view */ public function can_view(): bool; /** * Render the complete report (header + content + footer). * * @return void */ public function render(): void; /** * Get the report configuration as an array. * Used for backward compatibility with legacy system. * * @return array Report configuration */ public function to_array(): array; }