import * as http from '@microsoft/teams.common/http';
import { CloudEnvironment } from '../auth/cloud-environment.js';
import { ApiClientSettings } from './api-client-settings.js';
export { DEFAULT_API_CLIENT_SETTINGS, mergeApiClientSettings } from './api-client-settings.js';
import { BotClient } from './bot/index.js';
import { ConversationClient } from './conversation/index.js';
export { CreateConversationParams, GetConversationsParams, GetConversationsResponse } from './conversation/index.js';
import { MeetingClient } from './meeting.js';
import { ReactionClient } from './reaction/reaction.js';
import { TeamClient } from './team.js';
import { UserClient } from './user/index.js';
export { b as ActivityParams, C as ConversationActivityClient } from '../activity-BzTsi0gF.js';
export { BOT_SIGNIN_ENDPOINTS, BotSignInClient, GetBotSignInResourceParams, GetBotSignInUrlParams } from './bot/sign-in.js';
export { ConversationMemberClient } from './conversation/member.js';
export { ExchangeUserTokenParams, GetUserAADTokenParams, GetUserTokenParams, GetUserTokenStatusParams, SignOutUserParams, USER_TOKEN_ENDPOINTS, UserTokenClient } from './user/token.js';
import '../models/conversation/conversation.js';
import '../models/account.js';
import '../models/membership-source.js';
import '../models/membership-source-types.js';
import '../models/membership-types.js';
import '../models/role.js';
import '../models/conversation/conversation-resource.js';
import '../models/conversation/paged-members-result.js';
import '../models/resource.js';
import '../models/meeting/meeting-info.js';
import '../models/meeting/meeting-details.js';
import '../models/meeting/meeting-notification.js';
import '../models/meeting/meeting-participant.js';
import '../models/meeting/meeting.js';
import '../models/message/message-reaction.js';
import '../models/message/message-user.js';
import '../models/channel-data/channel-info.js';
import '../models/team-details.js';
import '../message-B-5FpoB1.js';
import '../models/entity/mention-entity.js';
import '../models/input-hint.js';
import '../models/text-format.js';
import '../models/attachment/attachment.js';
import '../models/attachment/card-attachment.js';
import '@microsoft/teams.cards';
import '../models/card/animation-card.js';
import '../models/card/card-action.js';
import '../models/card/media-url.js';
import '../models/card/thumbnail-url.js';
import '../models/card/audio-card.js';
import '../models/card/hero-card.js';
import '../models/card/card-image.js';
import '../models/card/thumbnail-card.js';
import '../models/card/video-card.js';
import '../models/oauth/oauth-card.js';
import '../models/token/token-post-resource.js';
import '../models/token-exchange/token-exchange-resource.js';
import '../models/sign-in/sign-in-card.js';
import '../models/attachment/attachment-layout.js';
import '../models/suggested-actions.js';
import '../models/importance.js';
import '../models/delivery-mode.js';
import '../activities/activity.js';
import '../models/channel-id.js';
import '../models/conversation/conversation-reference.js';
import '../models/entity/index.js';
import '../models/entity/ai-message-entity.js';
import '../models/entity/message-entity.js';
import '../models/entity/citation-entity.js';
import '../models/entity/client-info-entity.js';
import '../models/entity/product-info-entity.js';
import '../models/entity/sensitive-usage-entity.js';
import '../models/entity/stream-info-entity.js';
import '../models/channel-data/index.js';
import '../models/channel-data/feedback-loop.js';
import '../models/channel-data/notification-info.js';
import '../models/channel-data/on-behalf-of.js';
import '../models/channel-data/settings.js';
import '../models/channel-data/team-info.js';
import '../models/channel-data/tenant-info.js';
import '../activities/typing.js';
import '../activities/message/message-update.js';
import '../activities/command/index.js';
import '../activities/command/command-result.js';
import '../activities/command/command-send.js';
import '../activities/conversation/index.js';
import '../activities/conversation/conversation-update.js';
import '../activities/conversation/end-of-conversation.js';
import '../activities/event/index.js';
import '../activities/event/meeting-end.js';
import '../activities/event/meeting-participant-join.js';
import '../activities/event/meeting-participant-leave.js';
import '../activities/event/meeting-start.js';
import '../activities/event/read-receipt.js';
import '../activities/handoff.js';
import '../activities/install-update/index.js';
import '../activities/install-update/add.js';
import '../activities/install-update/remove.js';
import '../activities/invoke/adaptive-card/index.js';
import '../activities/invoke/adaptive-card/action.js';
import '../models/adaptive-card/adaptive-card-invoke-value.js';
import '../models/adaptive-card/adaptive-card-authentication.js';
import '../models/token-exchange/token-exchange-invoke-request.js';
import '../models/adaptive-card/adaptive-card-invoke-action.js';
import '../activities/invoke/config/index.js';
import '../activities/invoke/config/config-fetch.js';
import '../activities/invoke/config/config-submit.js';
import '../activities/invoke/execute-action.js';
import '../models/o365/o365-connector-card-action-query.js';
import '../activities/invoke/file-consent.js';
import '../models/file/file-consent-card.js';
import '../models/action.js';
import '../models/file/file-upload-info.js';
import '../activities/invoke/handoff-action.js';
import '../activities/invoke/message/index.js';
import '../activities/invoke/message/fetch-task.js';
import '../activities/invoke/message/submit-action.js';
import '../activities/invoke/message-extension/anon-query-link.js';
import '../models/app-based-link-query.js';
import '../activities/invoke/message-extension/card-button-clicked.js';
import '../models/message/message.js';
import '../models/message/message-body.js';
import '../models/message/message-from.js';
import '../models/message/message-app.js';
import '../models/message/message-conversation.js';
import '../models/message/message-mention.js';
import '../models/task-module/task-module-request.js';
import '../models/tab/tab-entity-context.js';
import '../activities/invoke/message-extension/query.js';
import '../models/messaging-extension/messaging-extension-query.js';
import '../models/messaging-extension/messaging-extension-parameter.js';
import '../activities/invoke/message-extension/query-link.js';
import '../activities/invoke/message-extension/query-setting-url.js';
import '../activities/invoke/message-extension/select-item.js';
import '../activities/invoke/message-extension/setting.js';
import '../activities/invoke/sign-in/index.js';
import '../activities/invoke/sign-in/failure.js';
import '../models/sign-in/sign-in-failure.js';
import '../activities/invoke/sign-in/token-exchange.js';
import '../models/sign-in/sign-in-exchange-token.js';
import '../activities/invoke/sign-in/verify-state.js';
import '../models/sign-in/sign-in-state-verify-query.js';
import '../activities/invoke/tab/index.js';
import '../activities/invoke/tab/tab-fetch.js';
import '../models/tab/tab-request.js';
import '../models/tab/tab-context.js';
import '../activities/invoke/tab/tab-submit.js';
import '../activities/invoke/task/index.js';
import '../activities/invoke/task/task-fetch.js';
import '../activities/invoke/task/task-submit.js';
import '../activities/message/index.js';
import '../activities/message/message-delete.js';
import '../activities/message/message-reaction.js';
import '../activities/trace.js';
import '../models/sign-in/sign-in-url-response.js';
import '../models/token/token-response.js';
import '../models/token/token-status.js';
import '../models/token-exchange/token-exchange-request.js';

declare class Client {
    readonly serviceUrl: string;
    readonly bots: BotClient;
    readonly users: UserClient;
    readonly conversations: ConversationClient;
    readonly teams: TeamClient;
    readonly meetings: MeetingClient;
    /**
     * @experimental This API is in preview and may change in the future.
     * Diagnostic: ExperimentalTeamsReactions
     */
    readonly reactions: ReactionClient;
    get http(): http.Client;
    set http(v: http.Client);
    protected _http: http.Client;
    protected _apiClientSettings: Partial<ApiClientSettings>;
    constructor(serviceUrl: string, options?: http.Client | http.ClientOptions, apiClientSettings?: Partial<ApiClientSettings>, cloud?: CloudEnvironment);
}

export { ApiClientSettings, BotClient, Client, ConversationClient, MeetingClient, ReactionClient, TeamClient, UserClient };
