import 'package:flutter/material.dart'; import 'iop_console_shell.dart'; /// Configuration for the IOP Console, providing endpoints and auth references for Control Plane interaction. class IopConsoleConfig { final String controlPlaneHttpUrl; final String controlPlaneWireUrl; final String? authTokenReference; // auth/token reference const IopConsoleConfig({ required this.controlPlaneHttpUrl, required this.controlPlaneWireUrl, this.authTokenReference, }); } /// Theme adapter to customize the appearance of embeddable IOP Console components. class IopConsoleThemeAdapter { final Color primaryColor; final Color backgroundColor; final Color railBackgroundColor; final Color borderColor; final Color textColor; final Color textSecondaryColor; const IopConsoleThemeAdapter({ this.primaryColor = const Color(0xFF10B981), this.backgroundColor = const Color(0xFF0F172A), this.railBackgroundColor = const Color(0xFF111827), this.borderColor = const Color(0xFF263043), this.textColor = Colors.white, this.textSecondaryColor = Colors.white60, }); } /// Navigation contract allowing hosts to listen to section routing changes. typedef IopConsoleNavigationCallback = void Function(IopConsoleSection section); class IopConsoleNavigation { final IopConsoleNavigationCallback? onNavigate; const IopConsoleNavigation({this.onNavigate}); }