/**
* @file 认证相关仓库类,定义认证模块请求
* @author JunBin.Yang
*/
import { NetworkResult } from "@core/network";
import { Auth, PasswordLoginRequest } from "@shared/types";
/**
* 定义跨功能包共享的 DI 服务键
*/
export const AUTH_REPOSITORY_KEY: string = "authRepository";
export interface IAuthRepository {
/**
* 刷新 Token
* @param {Record<string, string>} params - 刷新参数
* @returns {Promise<NetworkResult<Auth>>} 刷新后的认证信息
*/
refreshToken(params: Record<string, string>): Promise<NetworkResult<Auth>>;
/**
* 密码登录
* @param params 登录参数,包含用户名、密码等
* @returns 包含认证信息的网络响应
*/
loginByPassword(params: PasswordLoginRequest): Promise<NetworkResult<Auth>>;
}