UNPKG

@microsoft/agents-hosting-extensions-teams

Version:

Microsoft 365 Agents SDK for JavaScript. Teams extensions

127 lines (126 loc) 6.19 kB
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; }