matterbridge-roborock-vacuum-plugin
Version:
Matterbridge Roborock Vacuum Plugin
19 lines • 1.05 kB
TypeScript
import { AnsiLogger } from 'matterbridge/logger';
import type { UserData } from '../../roborockCommunication/models/index.js';
import type { AuthContext } from './AuthContext.js';
import { PasswordAuthStrategy } from './PasswordAuthStrategy.js';
import { TwoFactorAuthStrategy } from './TwoFactorAuthStrategy.js';
/** Coordinates authentication strategies based on the selected method. */
export declare class AuthenticationCoordinator {
private readonly logger;
private readonly strategies;
constructor(passwordStrategy: PasswordAuthStrategy, twoFactorStrategy: TwoFactorAuthStrategy, logger: AnsiLogger);
/**
* Authenticate user using the specified method.
* @param method Authentication method ('Password' or 'VerificationCode')
* @param context Authentication context containing credentials
* @returns UserData if successful, undefined if further action required
*/
authenticate(method: string, context: AuthContext): Promise<UserData | undefined>;
}
//# sourceMappingURL=AuthenticationCoordinator.d.ts.map