meet-addons-sdk
Version:
SDK for easy creation of addons for meet.rs
140 lines (139 loc) • 3.69 kB
TypeScript
export declare class TokenInfo {
value: string;
expireAt: number;
}
export declare class ConfigurationItem {
key: string;
value: string;
}
export declare class HostInfo {
/**
* Origin of the frame which post messages will be processed.
*
* @type {string}
* @memberof DevInitContext
*/
origin: string;
/**
* Address of the host of the api addons is calling to validate the token etc
*
* @type {string}
* @memberof HostInfo
*/
authHost: string;
}
/**
* Non session specific participant info.
*
* @export
* @class ParticipantUserInfo
*/
export declare class ParticipantUserInfo {
/**
* Url of the participant avatar (if any).
* Avatar can be undefined if user has no avatar or
* choose in user privacy settings not to share it with addons.
*
* @type {string}
* @memberof ParticipantInfo
*/
avatarUrl?: string;
/**
* Display name of the participant (if any).
*
* Display name can be undefined if user choose in
* user privacy settings to not share it with addons.
* @type {string}
* @memberof ParticipantInfo
*/
displayName?: string;
/**
* Color assigned to a principal user.
* The color can be used by the application for personalizing
* user specific UX elements.
*
* @type {string}
* @memberof PrincipalInfo
*/
color: string;
/**
* Gets or sets information if participant is a guest user.
*
* @type {boolean}
* @memberof ParticipantUserInfo
*/
isGuest: boolean;
/**
* Requested theme of the addon UI.
* Default is dark theme.
*
* @type {('dark' | 'light')}
* @memberof InitMessage
*/
theme: 'dark' | 'light';
}
export declare class ParticipantInfo extends ParticipantUserInfo {
/**
* Identifier of the addon for which the
* hashed participant info is valid for
*
* @type {string}
* @memberof ParticipantInfo
*/
addonIdentifier: string;
/**
* Addon specific meeting identifier hash
*
* @type {string}
* @memberof ParticipantInfo
*/
sessionId: string;
/**
* Addon specific meeting participant identifier hash
*
* @type {string}
* @memberof ParticipantInfo
*/
sessionUserId: string;
/**
* A role participant has in the meeting.
*
* @type {string}
* @memberof ParticipantInfo
*/
sessionUserRole: string;
/**
* Gets or sets the timestamp when the attendee joined the meeting.
*
* @type {Date}
* @memberof ParticipantInfo
*/
joined?: Date;
/**
* Gets or sets the timestamp when the attendee left the meeting.
*
* @type {Date}
* @memberof ParticipantInfo
*/
ended?: Date;
}
export declare class PrincipalInfo extends ParticipantInfo {
/**
* Token which addon host can use to verify the authenticity of the initialization message and which
* will be sent as bearer authorization header to the meet addon API service providing context synchronization
* and storage.
* Token information contains both the token value and Unix based timestamp of when the token value will expire.
*
* @type {TokenInfo}
* @memberof PrincipalInfo
*/
token: TokenInfo;
/**
* Hashed tenant identifier.
* If default tenant, this value is null
*
* @type {string}
* @memberof PrincipalInfo
*/
tenant: string;
}