@microsoft/agents-hosting-extensions-teams
Version:
Microsoft 365 Agents SDK for JavaScript. Teams extensions
127 lines (126 loc) • 6.19 kB
TypeScript
import { Meeting } from './meeting/meeting';
import { AgentApplication, AgentExtension, RouteHandler, TurnState } from '@microsoft/agents-hosting';
import { MessageExtension } from './messageExtension/messageExtension';
import { TaskModule } from './taskModule/taskModule';
/**
* Microsoft Teams-specific extension for agent applications that provides event handlers and functionality
* for Teams-specific activities such as message operations, member management, channel operations, and team lifecycle events.
* @template TState The type of turn state, extending TurnState
*/
export declare class TeamsAgentExtension<TState extends TurnState = TurnState> extends AgentExtension<TState> {
private app;
_app: AgentApplication<TState>;
_meeting: Meeting<TState>;
_messageExtension: MessageExtension<TState>;
_taskModule: TaskModule<TState>;
/**
* Creates a new instance of TeamsAgentExtension.
* @param app The agent application instance to extend with Teams functionality
*/
constructor(app: AgentApplication<TState>);
/**
* Gets the meeting functionality for handling Teams meeting-related activities.
* @returns The Meeting instance for this extension
*/
get meeting(): Meeting<TState>;
/**
* Gets the message extension functionality for handling Teams message extension activities.
* @returns The MessageExtension instance for this extension
*/
get messageExtension(): MessageExtension<TState>;
/**
* Gets the task module functionality for handling Teams task module activities.
* @returns The TaskModule instance for this extension
*/
get taskModule(): TaskModule<TState>;
/**
* Registers a handler for message edit events in Teams.
* @param handler The route handler to execute when a message is edited
* @returns This TeamsAgentExtension instance for method chaining
*/
onMessageEdit: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for message delete events in Teams.
* @param handler The route handler to execute when a message is deleted
* @returns This TeamsAgentExtension instance for method chaining
*/
onMessageDelete: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for message undelete events in Teams.
* @param handler The route handler to execute when a message is undeleted
* @returns This TeamsAgentExtension instance for method chaining
*/
onMessageUndelete: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when members are added to a Teams conversation.
* @param handler The route handler to execute when members are added
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsMembersAdded: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when members are removed from a Teams conversation.
* @param handler The route handler to execute when members are removed
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsMembersRemoved: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams channel is created.
* @param handler The route handler to execute when a channel is created
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsChannelCreated: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams channel is deleted.
* @param handler The route handler to execute when a channel is deleted
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsChannelDeleted: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams channel is renamed.
* @param handler The route handler to execute when a channel is renamed
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsChannelRenamed: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams channel is restored.
* @param handler The route handler to execute when a channel is restored
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsChannelRestored: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is renamed.
* @param handler The route handler to execute when a team is renamed
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamRenamed: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is archived.
* @param handler The route handler to execute when a team is archived
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamArchived: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is unarchived.
* @param handler The route handler to execute when a team is unarchived
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamUnarchived: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is deleted (soft delete).
* @param handler The route handler to execute when a team is deleted
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamDeleted: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is hard deleted (permanently deleted).
* @param handler The route handler to execute when a team is hard deleted
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamHardDeleted: (handler: RouteHandler<TurnState>) => this;
/**
* Registers a handler for when a Teams team is restored.
* @param handler The route handler to execute when a team is restored
* @returns This TeamsAgentExtension instance for method chaining
*/
onTeamsTeamRestored: (handler: RouteHandler<TurnState>) => this;
}