1import type * as fms from "@distilled.cloud/aws/fms";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Request for {@link GetThirdPartyFirewallAssociationStatus}.
7 */
8export interface GetThirdPartyFirewallAssociationStatusRequest
9 extends fms.GetThirdPartyFirewallAssociationStatusRequest {}
10
11/**
12 * Runtime binding for `fms:GetThirdPartyFirewallAssociationStatus`.
13 *
14 * Returns the onboarding status of the Firewall Manager admin account with a third-party firewall vendor tenant, including the AWS Marketplace
15 * subscription status. Provide the implementation with `Effect.provide(AWS.FMS.GetThirdPartyFirewallAssociationStatusHttp)`.
16 * ### Third-Party Firewalls
17 * **Example:** Check Third-Party Firewall Onboarding Status
18 * ```typescript
19 * // init — account-level binding takes no resource
20 * const getThirdPartyFirewallAssociationStatus =
21 * yield* AWS.FMS.GetThirdPartyFirewallAssociationStatus();
22 *
23 * // runtime
24 * const result = yield* getThirdPartyFirewallAssociationStatus({
25 * ThirdPartyFirewall: "PALO_ALTO_NETWORKS_CLOUD_NGFW",
26 * });
27 * console.log(
28 * result.ThirdPartyFirewallStatus,
29 * result.MarketplaceOnboardingStatus,
30 * );
31 * ```
32 *
33 * @binding
34 */
35export interface GetThirdPartyFirewallAssociationStatus extends Binding.Service<
36 GetThirdPartyFirewallAssociationStatus,
37 "AWS.FMS.GetThirdPartyFirewallAssociationStatus",
38 () => Effect.Effect<
39 (
40 request: GetThirdPartyFirewallAssociationStatusRequest,
41 ) => Effect.Effect<
42 fms.GetThirdPartyFirewallAssociationStatusResponse,
43 fms.GetThirdPartyFirewallAssociationStatusError
44 >
45 >
46> {}
47
48export const GetThirdPartyFirewallAssociationStatus =
49 Binding.Service<GetThirdPartyFirewallAssociationStatus>(
50 "AWS.FMS.GetThirdPartyFirewallAssociationStatus",
51 );