@microsoft/teams.api
Version:
<p> <a href="https://www.npmjs.com/package/@microsoft/teams.api" target="_blank"> <img src="https://img.shields.io/npm/v/@microsoft/teams.api/latest" /> </a> <a href="https://www.npmjs.com/package/@microsoft/teams.api?activeTab=code" t
42 lines (40 loc) • 1.51 kB
TypeScript
/**
* SDK operation/request scope for the Agent 365 program.
*
* An AgenticIdentity encompasses an agentic app blueprint
* (`agenticAppBlueprintId`), which can instantiate agentic apps
* (`agenticAppId`), and each app can optionally have associated agentic users
* (`agenticUserId`).
*/
type AgenticIdentity = {
/**
* ID of the Agentic App Blueprint that backs the agentic app.
*/
readonly agenticAppBlueprintId: string;
/**
* ID of the agentic app represented by this identity, when available/needed.
* Omit or use `null` when the operation has only a blueprint-level scope.
*/
readonly agenticAppId?: string | null;
/**
* Entra object ID of the user-backed agentic identity, when the operation
* acts on behalf of a user. Omit or use `null` for app-backed or
* blueprint-level operations that do not act as an agentic user.
*/
readonly agenticUserId?: string | null;
/**
* Tenant ID for token acquisition.
*/
readonly tenantId?: string;
};
/**
* Returns whether an agentic identity carries user-backed fields.
*
* Prefer this guard, or an equivalent `'agenticUserId' in identity` check, when
* code needs user-specific fields. App-backed identity shapes do not need to
* carry `agenticUserId`.
*/
declare function isUserBackedAgenticIdentity(identity: AgenticIdentity): identity is AgenticIdentity & {
readonly agenticUserId: string;
};
export { type AgenticIdentity, isUserBackedAgenticIdentity };