UNPKG

@microsoft/agents-hosting-teams

Version:

Microsoft 365 Agents SDK for JavaScript

51 lines (50 loc) 2.53 kB
import { TurnContext, TurnState } from '@microsoft/agents-hosting'; import { TeamsApplication } from '../teamsApplication'; import { MeetingParticipantsEventDetails } from '../../meeting/meetingParticipantsEventDetails'; import { MeetingEndEventDetails } from '../../meeting/meetingEndEventDetails'; import { MeetingStartEventDetails } from '../../meeting/meetingStartEventDetails'; /** * Handles Teams meeting-related events in applications. * Provides methods for registering handlers for meeting start, end, and participant changes. * @template TState Type extending TurnState to be used by the application */ export declare class Meetings<TState extends TurnState> { private readonly _app; /** * Creates a new Meetings instance. * @param app The TeamsApplication instance to associate with this Meetings instance */ constructor(app: TeamsApplication<TState>); /** * Registers a handler for meeting start events. * This event occurs when a Teams meeting begins. * * @param handler Function to handle the meeting start event * @returns The TeamsApplication instance for chaining */ start(handler: (context: TurnContext, state: TState, meeting: MeetingStartEventDetails) => Promise<void>): TeamsApplication<TState>; /** * Registers a handler for meeting end events. * This event occurs when a Teams meeting ends. * * @param handler Function to handle the meeting end event * @returns The TeamsApplication instance for chaining */ end(handler: (context: TurnContext, state: TState, meeting: MeetingEndEventDetails) => Promise<void>): TeamsApplication<TState>; /** * Registers a handler for participant join events. * This event occurs when participants join a Teams meeting. * * @param handler Function to handle the participants join event * @returns The TeamsApplication instance for chaining */ participantsJoin(handler: (context: TurnContext, state: TState, meeting: MeetingParticipantsEventDetails) => Promise<void>): TeamsApplication<TState>; /** * Registers a handler for participant leave events. * This event occurs when participants leave a Teams meeting. * * @param handler Function to handle the participants leave event * @returns The TeamsApplication instance for chaining */ participantsLeave(handler: (context: TurnContext, state: TState, meeting: MeetingParticipantsEventDetails) => Promise<void>): TeamsApplication<TState>; }