{"version":3,"sources":["../../../src/clients/user/index.ts"],"names":["HttpClient"],"mappings":";;;;;AAgBO,MAAM,UAAA,CAAW;AAAA,EACtB,IAAI,IAAA,GAAO;AACT,IAAA,OAAO,IAAA,CAAK,KAAA;AAAA,EACd;AAAA,EACF,IAAI,KAAK,CAAA,EAAG;AACV,IAAA,IAAA,CAAK,OAAO,IAAA,GAAO,CAAA;AACnB,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAA;AAAA,EACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAME,IAAI,KAAA,GAAQ;AACV,IAAA,OAAO,IAAA,CAAK,MAAA;AAAA,EACd;AAAA,EACU,KAAA;AAAA,EACA,MAAA;AAAA,EACA,kBAAA;AAAA,EAEV,WAAA,CAAY,SAA0C,iBAAA,EAAgD;AACpG,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,MAAA,EAAW;AAAA,IAC9B,CAAA,MAAA,IAAW,aAAa,OAAA,EAAS;AAC/B,MAAA,IAAA,CAAK,KAAA,GAAQ,OAAA;AAAA,IACf,CAAA,MAAO;AACL,MAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,MAAA,CAAW,OAAO,CAAA;AAAA,IACrC;AAEA,IAAA,IAAA,CAAK,kBAAA,GAAqB,uBAAuB,iBAAiB,CAAA;AAClE,IAAA,IAAA,CAAK,SAAS,IAAI,eAAA,CAAgB,IAAA,CAAK,IAAA,EAAM,KAAK,kBAAkB,CAAA;AAAA,EACtE;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS,MAAA,EAA4B;AACnC,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,GAAA,CAAI,MAAM,CAAA;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA,EAKA,aAAa,MAAA,EAA+B;AAC1C,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA,EAKA,eAAe,MAAA,EAAkC;AAC/C,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,SAAA,CAAU,MAAM,CAAA;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ,MAAA,EAA2B;AACjC,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,OAAA,CAAQ,MAAM,CAAA;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,MAAA,EAAiC;AAC7C,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AAAA,EACpC;AACF","file":"index.mjs","sourcesContent":["import {\n  Client as HttpClient,\n  type ClientOptions as HttpClientOptions\n} from '@microsoft/teams.common';\n\nimport { ApiClientSettings, mergeApiClientSettings } from '../api-client-settings';\n\nimport {\n  ExchangeUserTokenParams,\n  GetUserAADTokenParams,\n  GetUserTokenParams,\n  GetUserTokenStatusParams,\n  SignOutUserParams,\n  UserTokenClient,\n} from './token';\n\nexport class UserClient {\n  get http() {\n    return this._http;\n  }\nset http(v) {\n  this._token.http = v;\n  this._http = v;\n}\n  /**\n   * @deprecated Use the flattened methods on `UserClient` instead\n   * (e.g. `users.getToken(...)`). This grouped accessor will be removed\n   * in a future release.\n   */\n  get token() {\n    return this._token;\n  }\n  protected _http: HttpClient;\n  protected _token: UserTokenClient;\n  protected _apiClientSettings: Partial<ApiClientSettings>;\n\n  constructor(options?: HttpClient | HttpClientOptions, apiClientSettings?: Partial<ApiClientSettings>) {\n    if (!options) {\n      this._http = new HttpClient();\n    } else if ('request' in options) {\n      this._http = options;\n    } else {\n      this._http = new HttpClient(options);\n    }\n\n    this._apiClientSettings = mergeApiClientSettings(apiClientSettings);\n    this._token = new UserTokenClient(this.http, this._apiClientSettings);\n  }\n\n  /**\n   * Get a user token for the given connection.\n   */\n  getToken(params: GetUserTokenParams) {\n    return this._token.get(params);\n  }\n\n  /**\n   * Get AAD tokens for the given connection and resource urls.\n   */\n  getAadTokens(params: GetUserAADTokenParams) {\n    return this._token.getAad(params);\n  }\n\n  /**\n   * Get the token status for a user.\n   */\n  getTokenStatus(params: GetUserTokenStatusParams) {\n    return this._token.getStatus(params);\n  }\n\n  /**\n   * Sign a user out of the given connection.\n   */\n  signOut(params: SignOutUserParams) {\n    return this._token.signOut(params);\n  }\n\n  /**\n   * Exchange a user token for the given connection.\n   */\n  exchangeToken(params: ExchangeUserTokenParams) {\n    return this._token.exchange(params);\n  }\n}\n\nexport * from './token';\n"]}