import { TokenResponse, TurnContext } from 'botbuilder'; /** * @internal */ export interface AdaptiveCardLoginRequest { statusCode: number; type: 'application/vnd.microsoft.activity.loginRequest'; value: { text: string; connectionName: string; tokenExchangeResource?: { id: string; uri: string; providerId?: string; }; buttons: { title: string; text: string; type: string; value: string; }[]; }; } /** * @internal * * Base class to handle adaptive card authentication. */ export declare abstract class AdaptiveCardAuthenticationBase { /** * Authenticates the user. * @param {TurnContext} context - The turn context. * @returns {Promise} - The authentication token, or undefined if authentication failed. Teams will ask user to sign-in if authentication failed. */ authenticate(context: TurnContext): Promise; /** * Checks if the activity is a valid Adaptive Card activity that supports authentication. * @param {TurnContext} context - The turn context. * @returns {boolean} A boolean indicating if the activity is valid. */ isValidActivity(context: TurnContext): boolean; /** * Handles the SSO token exchange. * @param context - The turn context. * @returns A promise that resolves to the token response or undefined if token exchange failed. */ abstract handleSsoTokenExchange(context: TurnContext): Promise; /** * Handles the user sign-in. * @param context - The turn context. * @param magicCode - The magic code from user sign-in. * @returns A promise that resolves to the token response or undefined if failed to verify the magic code. */ abstract handleUserSignIn(context: TurnContext, magicCode: string): Promise; /** * Gets the login request for Adaptive Card authentication. * @param context - The turn context. * @returns A promise that resolves to the login request. */ abstract getLoginRequest(context: TurnContext): Promise; } //# sourceMappingURL=AdaptiveCardAuthenticationBase.d.ts.map