import { NodeIKernelLoginListener } from '@/napcat-core/listeners/NodeIKernelLoginListener'; import { GeneralCallResult } from './common'; export interface LoginInitConfig { machineId: ''; appid: string; platVer: string; commonPath: string; clientVer: string; hostName: string; externalVersion: boolean; } export interface PasswordLoginRetType { result: string, loginErrorInfo: { step: number; errMsg: string; proofWaterUrl: string; newDevicePullQrCodeSig: string; jumpUrl: string, jumpWord: string; tipsTitle: string; tipsContent: string; }; } export interface PasswordLoginArgType { uin: string; passwordMd5: string;// passwMD5 step: number;// 猜测是需要二次认证 参数 一次为0 newDeviceLoginSig: string; proofWaterSig: string; proofWaterRand: string; proofWaterSid: string; } export interface LoginListItem { uin: string; uid: string; nickName: string; faceUrl: string; facePath: string; loginType: 1; // 1是二维码登录? isQuickLogin: boolean; // 是否可以快速登录 isAutoLogin: boolean; // 是否可以自动登录 } export interface QuickLoginResult { result: string; loginErrorInfo: { step: number, errMsg: string, proofWaterUrl: string, newDevicePullQrCodeSig: string, jumpUrl: string, jumpWord: string, tipsTitle: string, tipsContent: string; }; } export interface NodeIKernelLoginService { getMsfStatus: () => number; setLoginMiscData (arg0: string, value: string): unknown; getMachineGuid (): string; get (): NodeIKernelLoginService; connect (): boolean; addKernelLoginListener (listener: NodeIKernelLoginListener): number; removeKernelLoginListener (listener: number): void; initConfig (config: LoginInitConfig): void; getLoginMiscData (data: string): Promise; getLoginList (): Promise<{ result: number, // 0是ok LocalLoginInfoList: LoginListItem[]; }>; quickLoginWithUin (uin: string): Promise; passwordLogin (param: PasswordLoginArgType): Promise; getQRCodePicture (): boolean; }