import { TokenResponse, TurnContext } from 'botbuilder-core';
import { OAuthPromptSettings } from 'botbuilder-dialogs';
import { SignInUrlResponse, TokenExchangeRequest } from 'botframework-connector';
/**
 * @internal
 * @private
 * Retrieves the user token for a given connection name and magic code.
 * @param {TurnContext} context The context object for the current turn of conversation.
 * @param {OAuthPromptSettings} settings The settings for the OAuth prompt.
 * @param {string} magicCode The magic code to use for token retrieval.
 * @returns {Promise<TokenResponse>} A TokenResponse object containing the user token.
 */
export declare function getUserToken(context: TurnContext, settings: OAuthPromptSettings, magicCode: string): Promise<TokenResponse>;
/**
 * @internal
 * @private
 * @param {TurnContext} context The context object for the current turn of conversation.
 * @param {OAuthPromptSettings} settings The settings for the OAuth prompt.
 * @returns {Promise<SignInUrlResponse>} A SignInUrlResponse object containing the sign-in URL.
 */
export declare function getSignInResource(context: TurnContext, settings: OAuthPromptSettings): Promise<SignInUrlResponse>;
/**
 * @internal
 * @private
 * @param {TurnContext} context The context object for the current turn of conversation.
 * @param {OAuthPromptSettings} settings The settings for the OAuth prompt.
 */
export declare function signOutUser(context: TurnContext, settings: OAuthPromptSettings): Promise<void>;
/**
 * @internal
 * @private
 * @param {TurnContext} context The context object for the current turn of conversation.
 * @param {OAuthPromptSettings} settings The settings for the OAuth prompt.
 * @param {TokenExchangeRequest} tokenExchangeRequest The token exchange request details to be sent to the Bot Framework Token Service.
 * @returns {Promise<TokenResponse>} A TokenResponse object containing the user token.
 */
export declare function exchangeToken(context: TurnContext, settings: OAuthPromptSettings, tokenExchangeRequest: TokenExchangeRequest): Promise<TokenResponse>;
//# sourceMappingURL=UserTokenAccess.d.ts.map