1import type * as licensemanager from "@distilled.cloud/aws/license-manager";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Request for {@link GetServiceSettings}.
7 */
8export interface GetServiceSettingsRequest
9 extends licensemanager.GetServiceSettingsRequest {}
10
11/**
12 * Runtime binding for `license-manager:GetServiceSettings` — read the
13 * account's License Manager settings (S3 report bucket, SNS alert topic,
14 * organization integration).
15 *
16 * Provide the implementation with
17 * `Effect.provide(AWS.LicenseManager.GetServiceSettingsHttp)`.
18 * ### Resource Inventory and Specifications
19 * **Example:** Read the Account's Service Settings
20 * ```typescript
21 * // init
22 * const getServiceSettings =
23 * yield* AWS.LicenseManager.GetServiceSettings();
24 *
25 * // runtime
26 * const { SnsTopicArn, EnableCrossAccountsDiscovery } =
27 * yield* getServiceSettings();
28 * ```
29 *
30 * @binding
31 */
32export interface GetServiceSettings extends Binding.Service<
33 GetServiceSettings,
34 "AWS.LicenseManager.GetServiceSettings",
35 () => Effect.Effect<
36 (
37 request?: GetServiceSettingsRequest,
38 ) => Effect.Effect<
39 licensemanager.GetServiceSettingsResponse,
40 licensemanager.GetServiceSettingsError
41 >
42 >
43> {}
44export const GetServiceSettings = Binding.Service<GetServiceSettings>(
45 "AWS.LicenseManager.GetServiceSettings",
46);