import { UserCredential } from '../models/po/usercredential.entity'; import { User } from '../models/po/user.entity'; import { ThirdPartyService } from './thirdparty.service'; import { mongoose } from '@typegoose/typegoose'; import { UserRepository } from '../dbrepository/user.repo'; import { UserCredentialRepository } from '../dbrepository/usercredential.repo'; import { CacheService } from '../auth/cache.service'; import { ThirdPartyCredential } from '../models/dto/thirdpartycredential.dto'; import { VendorRepository } from '../dbrepository/vendor.repo'; export declare class WechatService extends ThirdPartyService { protected readonly userCredentialRepo: UserCredentialRepository; private readonly userRepo; private readonly cacheService; private readonly vendorRepo; private logger; constructor(userCredentialRepo: UserCredentialRepository, userRepo: UserRepository, cacheService: CacheService, vendorRepo: VendorRepository); findOneByName(username: string): Promise; attachUser(credential: ThirdPartyCredential, vendorId: string): Promise<[User, UserCredential]>; findCredential(credential: ThirdPartyCredential, vendorId: string): Promise; code2Session(code: string, vendorId: string): Promise; getAccessToken(vendorId: string, forceRefresh?: boolean): Promise; private getAccessTokenFromWc; unencrpt(encryptedData: any, iv: any, sessionKey: any, appId: any): any; updateFromUnencryptedData(uid: mongoose.Types.ObjectId, data: any): Promise; getAppIdSecretByVendorId(vendorId: string): Promise<[string, string]>; }