package com.fs.wxcid.service;


import com.fs.wxcid.dto.common.ApiResponse;
import com.fs.wxcid.dto.admin.GenAuthKey1Request;
import com.fs.wxcid.dto.admin.GenAuthKey3Request;
import com.fs.wxcid.dto.user.DelayAuthKeyRequest;
import com.fs.wxcid.dto.user.DeleteAuthKeyRequest;
import com.fs.wxcid.dto.user.DisableAuthKeyRequest;

public interface AdminLicenseService {

    // 授权码延期
    ApiResponse delayAuthKey(String key, DelayAuthKeyRequest request);

    // 删除授权码
    ApiResponse deleteAuthKey(String key, DeleteAuthKeyRequest request);

    // 禁用授权码
    ApiResponse disableAuthKey(String key, DisableAuthKeyRequest request);

    // 生成授权码（新设备）- POST 版本
    ApiResponse genAuthKey1(String key, GenAuthKey1Request request);

    // 生成授权码（新设备）- GET 版本（无参）
    ApiResponse genAuthKey2(String key);

    // 生成授权码（按类型：日/周/月...）
    ApiResponse genAuthKey3(String key, GenAuthKey3Request request);

    // 查询所有激活状态的卡密
    ApiResponse getActiveLicenseKeys(String key);

    // 获取代理映射列表
    ApiResponse getProxyMappingList(String key);

    // 同步卡密激活状态（HTTP 轮询）
    ApiResponse httpSyncLicenseKey(String key);
}