import 'package:networks_sdk/networks_sdk.dart';

import '../../../core/foundation/api_paths.dart';

/// # /auth/logout — 登出接口（无响应数据示例）
///
/// 演示：POST 请求 + 无 Response DTO 的模式。
/// 服务端返回 `{"code": 0, "message": "ok"}` 无 data 字段，
/// `executeRequest` 返回 null，调用方直接 await 即可。
///
/// 此接口不使用 @ApiRequest 注解，直接实现 ApiRequestable，
/// 演示手动实现方式（适用于不需要代码生成器的简单接口）。
///
/// ## 数据流位置
///
/// ```
/// AuthRepositoryImpl.logout()
///   → _client.executeRequest( ★ LogoutRequest ★ )     ← 你在这里
///     → 服务端 POST /auth/logout
///     → 响应 {"code": 0, "message": "ok"} → null
/// ```
class LogoutRequest extends ApiRequestable<void> {
  @override
  String get path => ApiPaths.authLogout;

  @override
  HttpMethod get method => HttpMethod.post;

  /// 登出不需要请求体参数
  @override
  Map<String, dynamic> toJson() => {};
}
