All Downloads are FREE. Search and download functionalities are using the official Maven repository.

zio.aws.organizations.Organizations.scala Maven / Gradle / Ivy

There is a newer version: 7.21.15.15
Show newest version
package zio.aws.organizations
import zio.aws.organizations.model.UpdateOrganizationalUnitResponse.ReadOnly
import zio.aws.organizations.model.{
  ListRootsRequest,
  CreateAccountRequest,
  ListChildrenRequest,
  ListPoliciesRequest,
  DescribePolicyRequest,
  DescribeEffectivePolicyRequest,
  UpdatePolicyRequest,
  DeleteOrganizationalUnitRequest,
  DescribeOrganizationalUnitRequest,
  ListAccountsForParentRequest,
  PutResourcePolicyRequest,
  CreateOrganizationRequest,
  UpdateOrganizationalUnitRequest,
  ListParentsRequest,
  EnableAwsServiceAccessRequest,
  ListTagsForResourceRequest,
  ListHandshakesForAccountRequest,
  ListTargetsForPolicyRequest,
  DescribeHandshakeRequest,
  ListPoliciesForTargetRequest,
  ListCreateAccountStatusRequest,
  ListHandshakesForOrganizationRequest,
  ListOrganizationalUnitsForParentRequest,
  CreateGovCloudAccountRequest,
  InviteAccountToOrganizationRequest,
  CancelHandshakeRequest,
  ListAccountsRequest,
  ListDelegatedServicesForAccountRequest,
  DeclineHandshakeRequest,
  AcceptHandshakeRequest,
  DetachPolicyRequest,
  UntagResourceRequest,
  ListDelegatedAdministratorsRequest,
  EnableAllFeaturesRequest,
  ListAwsServiceAccessForOrganizationRequest,
  DisableAwsServiceAccessRequest,
  CloseAccountRequest,
  CreateOrganizationalUnitRequest,
  DescribeCreateAccountStatusRequest,
  RegisterDelegatedAdministratorRequest,
  DisablePolicyTypeRequest,
  DeletePolicyRequest,
  MoveAccountRequest,
  RemoveAccountFromOrganizationRequest,
  TagResourceRequest,
  AttachPolicyRequest,
  CreatePolicyRequest,
  DescribeAccountRequest,
  DeregisterDelegatedAdministratorRequest,
  EnablePolicyTypeRequest
}
import zio.aws.core.config.AwsConfig
import software.amazon.awssdk.services.organizations.model.{
  Account,
  DescribeOrganizationalUnitResponse,
  PolicySummary,
  EnabledServicePrincipal,
  MoveAccountResponse,
  PolicyTargetSummary,
  PutResourcePolicyResponse,
  CreatePolicyResponse,
  ListAwsServiceAccessForOrganizationResponse,
  RemoveAccountFromOrganizationResponse,
  ListPoliciesForTargetResponse,
  DescribeResourcePolicyResponse,
  LeaveOrganizationRequest,
  ListPoliciesResponse,
  DelegatedService,
  ListHandshakesForAccountResponse,
  OrganizationalUnit,
  DisableAwsServiceAccessResponse,
  CreateAccountResponse,
  DescribeOrganizationRequest,
  CreateAccountStatus,
  DescribePolicyResponse,
  ListAccountsResponse,
  ListParentsResponse,
  DeleteOrganizationalUnitResponse,
  Tag,
  DelegatedAdministrator,
  DescribeAccountResponse,
  ListTagsForResourceResponse,
  RegisterDelegatedAdministratorResponse,
  UntagResourceResponse,
  EnablePolicyTypeResponse,
  DetachPolicyResponse,
  CancelHandshakeResponse,
  AttachPolicyResponse,
  DisablePolicyTypeResponse,
  CreateGovCloudAccountResponse,
  DescribeOrganizationResponse,
  DeletePolicyResponse,
  InviteAccountToOrganizationResponse,
  ListRootsResponse,
  LeaveOrganizationResponse,
  ListOrganizationalUnitsForParentResponse,
  ListCreateAccountStatusResponse,
  DeleteResourcePolicyRequest,
  ListTargetsForPolicyResponse,
  ListChildrenResponse,
  DeclineHandshakeResponse,
  DescribeEffectivePolicyResponse,
  UpdatePolicyResponse,
  Parent,
  UpdateOrganizationalUnitResponse,
  Child,
  DeregisterDelegatedAdministratorResponse,
  CreateOrganizationalUnitResponse,
  DescribeCreateAccountStatusResponse,
  AcceptHandshakeResponse,
  DeleteResourcePolicyResponse,
  ListAccountsForParentResponse,
  Root,
  DescribeResourcePolicyRequest,
  Handshake,
  DescribeHandshakeResponse,
  TagResourceResponse,
  ListHandshakesForOrganizationResponse,
  DeleteOrganizationResponse,
  DeleteOrganizationRequest,
  EnableAwsServiceAccessResponse,
  EnableAllFeaturesResponse,
  ListDelegatedServicesForAccountResponse,
  CloseAccountResponse,
  CreateOrganizationResponse,
  ListDelegatedAdministratorsResponse
}
import software.amazon.awssdk.services.organizations.{
  OrganizationsAsyncClientBuilder,
  OrganizationsAsyncClient
}
import zio.aws.core.{AwsServiceBase, AwsError}
import zio.aws.core.aspects.{AwsCallAspect, AspectSupport}
import zio.{ZEnvironment, IO, ZIO, ZLayer, Scope}
import zio.stream.ZStream
import scala.jdk.CollectionConverters._
trait Organizations extends AspectSupport[Organizations] {
  val api: OrganizationsAsyncClient
  def listParents(
      request: ListParentsRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Parent.ReadOnly]
  def listParentsPaginated(
      request: ListParentsRequest
  ): IO[AwsError, zio.aws.organizations.model.ListParentsResponse.ReadOnly]
  def inviteAccountToOrganization(
      request: InviteAccountToOrganizationRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.InviteAccountToOrganizationResponse.ReadOnly
  ]
  def describeOrganization(): IO[
    AwsError,
    zio.aws.organizations.model.DescribeOrganizationResponse.ReadOnly
  ]
  def describePolicy(
      request: DescribePolicyRequest
  ): IO[AwsError, zio.aws.organizations.model.DescribePolicyResponse.ReadOnly]
  def createAccount(
      request: CreateAccountRequest
  ): IO[AwsError, zio.aws.organizations.model.CreateAccountResponse.ReadOnly]
  def moveAccount(request: MoveAccountRequest): IO[AwsError, Unit]
  def listAccounts(
      request: ListAccountsRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Account.ReadOnly]
  def listAccountsPaginated(
      request: ListAccountsRequest
  ): IO[AwsError, zio.aws.organizations.model.ListAccountsResponse.ReadOnly]
  def deleteOrganizationalUnit(
      request: DeleteOrganizationalUnitRequest
  ): IO[AwsError, Unit]
  def enableAllFeatures(request: EnableAllFeaturesRequest): IO[
    AwsError,
    zio.aws.organizations.model.EnableAllFeaturesResponse.ReadOnly
  ]
  def cancelHandshake(
      request: CancelHandshakeRequest
  ): IO[AwsError, zio.aws.organizations.model.CancelHandshakeResponse.ReadOnly]
  def listAccountsForParent(
      request: ListAccountsForParentRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Account.ReadOnly]
  def listAccountsForParentPaginated(request: ListAccountsForParentRequest): IO[
    AwsError,
    zio.aws.organizations.model.ListAccountsForParentResponse.ReadOnly
  ]
  def enablePolicyType(
      request: EnablePolicyTypeRequest
  ): IO[AwsError, zio.aws.organizations.model.EnablePolicyTypeResponse.ReadOnly]
  def disablePolicyType(request: DisablePolicyTypeRequest): IO[
    AwsError,
    zio.aws.organizations.model.DisablePolicyTypeResponse.ReadOnly
  ]
  def describeOrganizationalUnit(
      request: DescribeOrganizationalUnitRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.DescribeOrganizationalUnitResponse.ReadOnly
  ]
  def listHandshakesForOrganization(
      request: ListHandshakesForOrganizationRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Handshake.ReadOnly]
  def listHandshakesForOrganizationPaginated(
      request: ListHandshakesForOrganizationRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListHandshakesForOrganizationResponse.ReadOnly
  ]
  def listTargetsForPolicy(request: ListTargetsForPolicyRequest): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.PolicyTargetSummary.ReadOnly
  ]
  def listTargetsForPolicyPaginated(request: ListTargetsForPolicyRequest): IO[
    AwsError,
    zio.aws.organizations.model.ListTargetsForPolicyResponse.ReadOnly
  ]
  def detachPolicy(request: DetachPolicyRequest): IO[AwsError, Unit]
  def updatePolicy(
      request: UpdatePolicyRequest
  ): IO[AwsError, zio.aws.organizations.model.UpdatePolicyResponse.ReadOnly]
  def putResourcePolicy(request: PutResourcePolicyRequest): IO[
    AwsError,
    zio.aws.organizations.model.PutResourcePolicyResponse.ReadOnly
  ]
  def leaveOrganization(): IO[AwsError, Unit]
  def enableAWSServiceAccess(
      request: EnableAwsServiceAccessRequest
  ): IO[AwsError, Unit]
  def describeAccount(
      request: DescribeAccountRequest
  ): IO[AwsError, zio.aws.organizations.model.DescribeAccountResponse.ReadOnly]
  def deleteOrganization(): IO[AwsError, Unit]
  def createOrganizationalUnit(request: CreateOrganizationalUnitRequest): IO[
    AwsError,
    zio.aws.organizations.model.CreateOrganizationalUnitResponse.ReadOnly
  ]
  def acceptHandshake(
      request: AcceptHandshakeRequest
  ): IO[AwsError, zio.aws.organizations.model.AcceptHandshakeResponse.ReadOnly]
  def listPoliciesForTarget(
      request: ListPoliciesForTargetRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.PolicySummary.ReadOnly]
  def listPoliciesForTargetPaginated(request: ListPoliciesForTargetRequest): IO[
    AwsError,
    zio.aws.organizations.model.ListPoliciesForTargetResponse.ReadOnly
  ]
  def listOrganizationalUnitsForParent(
      request: ListOrganizationalUnitsForParentRequest
  ): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.OrganizationalUnit.ReadOnly
  ]
  def listOrganizationalUnitsForParentPaginated(
      request: ListOrganizationalUnitsForParentRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListOrganizationalUnitsForParentResponse.ReadOnly
  ]
  def updateOrganizationalUnit(
      request: UpdateOrganizationalUnitRequest
  ): IO[AwsError, ReadOnly]
  def listPolicies(
      request: ListPoliciesRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.PolicySummary.ReadOnly]
  def listPoliciesPaginated(
      request: ListPoliciesRequest
  ): IO[AwsError, zio.aws.organizations.model.ListPoliciesResponse.ReadOnly]
  def describeHandshake(request: DescribeHandshakeRequest): IO[
    AwsError,
    zio.aws.organizations.model.DescribeHandshakeResponse.ReadOnly
  ]
  def describeCreateAccountStatus(
      request: DescribeCreateAccountStatusRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.DescribeCreateAccountStatusResponse.ReadOnly
  ]
  def closeAccount(request: CloseAccountRequest): IO[AwsError, Unit]
  def listRoots(
      request: ListRootsRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Root.ReadOnly]
  def listRootsPaginated(
      request: ListRootsRequest
  ): IO[AwsError, zio.aws.organizations.model.ListRootsResponse.ReadOnly]
  def listCreateAccountStatus(request: ListCreateAccountStatusRequest): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.CreateAccountStatus.ReadOnly
  ]
  def listCreateAccountStatusPaginated(
      request: ListCreateAccountStatusRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListCreateAccountStatusResponse.ReadOnly
  ]
  def untagResource(request: UntagResourceRequest): IO[AwsError, Unit]
  def removeAccountFromOrganization(
      request: RemoveAccountFromOrganizationRequest
  ): IO[AwsError, Unit]
  def deleteResourcePolicy(): IO[AwsError, Unit]
  def listAWSServiceAccessForOrganization(
      request: ListAwsServiceAccessForOrganizationRequest
  ): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.EnabledServicePrincipal.ReadOnly
  ]
  def listAWSServiceAccessForOrganizationPaginated(
      request: ListAwsServiceAccessForOrganizationRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListAwsServiceAccessForOrganizationResponse.ReadOnly
  ]
  def deregisterDelegatedAdministrator(
      request: DeregisterDelegatedAdministratorRequest
  ): IO[AwsError, Unit]
  def declineHandshake(
      request: DeclineHandshakeRequest
  ): IO[AwsError, zio.aws.organizations.model.DeclineHandshakeResponse.ReadOnly]
  def attachPolicy(request: AttachPolicyRequest): IO[AwsError, Unit]
  def listTagsForResource(
      request: ListTagsForResourceRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Tag.ReadOnly]
  def listTagsForResourcePaginated(request: ListTagsForResourceRequest): IO[
    AwsError,
    zio.aws.organizations.model.ListTagsForResourceResponse.ReadOnly
  ]
  def listDelegatedServicesForAccount(
      request: ListDelegatedServicesForAccountRequest
  ): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.DelegatedService.ReadOnly
  ]
  def listDelegatedServicesForAccountPaginated(
      request: ListDelegatedServicesForAccountRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListDelegatedServicesForAccountResponse.ReadOnly
  ]
  def registerDelegatedAdministrator(
      request: RegisterDelegatedAdministratorRequest
  ): IO[AwsError, Unit]
  def describeEffectivePolicy(request: DescribeEffectivePolicyRequest): IO[
    AwsError,
    zio.aws.organizations.model.DescribeEffectivePolicyResponse.ReadOnly
  ]
  def createPolicy(
      request: CreatePolicyRequest
  ): IO[AwsError, zio.aws.organizations.model.CreatePolicyResponse.ReadOnly]
  def tagResource(request: TagResourceRequest): IO[AwsError, Unit]
  def listChildren(
      request: ListChildrenRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Child.ReadOnly]
  def listChildrenPaginated(
      request: ListChildrenRequest
  ): IO[AwsError, zio.aws.organizations.model.ListChildrenResponse.ReadOnly]
  def deletePolicy(request: DeletePolicyRequest): IO[AwsError, Unit]
  def describeResourcePolicy(): IO[
    AwsError,
    zio.aws.organizations.model.DescribeResourcePolicyResponse.ReadOnly
  ]
  def listHandshakesForAccount(
      request: ListHandshakesForAccountRequest
  ): ZStream[Any, AwsError, zio.aws.organizations.model.Handshake.ReadOnly]
  def listHandshakesForAccountPaginated(
      request: ListHandshakesForAccountRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListHandshakesForAccountResponse.ReadOnly
  ]
  def createGovCloudAccount(request: CreateGovCloudAccountRequest): IO[
    AwsError,
    zio.aws.organizations.model.CreateGovCloudAccountResponse.ReadOnly
  ]
  def disableAWSServiceAccess(
      request: DisableAwsServiceAccessRequest
  ): IO[AwsError, Unit]
  def listDelegatedAdministrators(
      request: ListDelegatedAdministratorsRequest
  ): ZStream[
    Any,
    AwsError,
    zio.aws.organizations.model.DelegatedAdministrator.ReadOnly
  ]
  def listDelegatedAdministratorsPaginated(
      request: ListDelegatedAdministratorsRequest
  ): IO[
    AwsError,
    zio.aws.organizations.model.ListDelegatedAdministratorsResponse.ReadOnly
  ]
  def createOrganization(request: CreateOrganizationRequest): IO[
    AwsError,
    zio.aws.organizations.model.CreateOrganizationResponse.ReadOnly
  ]
}
object Organizations {
  val live: ZLayer[AwsConfig, java.lang.Throwable, Organizations] = customized(
    identity
  )
  def customized(
      customization: OrganizationsAsyncClientBuilder => OrganizationsAsyncClientBuilder
  ): ZLayer[AwsConfig, java.lang.Throwable, Organizations] =
    ZLayer.scoped(scoped(customization))
  def scoped(
      customization: OrganizationsAsyncClientBuilder => OrganizationsAsyncClientBuilder
  ): ZIO[AwsConfig with Scope, java.lang.Throwable, Organizations] = for (
    awsConfig <- ZIO.service[AwsConfig]; executor <- ZIO.executor;
    builder = OrganizationsAsyncClient
      .builder()
      .asyncConfiguration(
        software.amazon.awssdk.core.client.config.ClientAsyncConfiguration
          .builder()
          .advancedOption(
            software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption.FUTURE_COMPLETION_EXECUTOR,
            executor.asJava
          )
          .build()
      );
    b0 <- awsConfig
      .configure[OrganizationsAsyncClient, OrganizationsAsyncClientBuilder](
        builder
      );
    b1 <- awsConfig.configureHttpClient[
      OrganizationsAsyncClient,
      OrganizationsAsyncClientBuilder
    ](
      b0,
      zio.aws.core.httpclient.ServiceHttpCapabilities(supportsHttp2 = false)
    );
    client <- ZIO.attempt(
      customization(
        b1.region(_root_.software.amazon.awssdk.regions.Region.AWS_GLOBAL)
      ).build()
    )
  )
    yield new OrganizationsImpl(
      client,
      AwsCallAspect.identity,
      ZEnvironment.empty
    )
  private class OrganizationsImpl[R](
      override val api: OrganizationsAsyncClient,
      override val aspect: AwsCallAspect[R],
      r: ZEnvironment[R]
  ) extends Organizations
      with AwsServiceBase[R] {
    override val serviceName: String = "Organizations"
    override def withAspect[R1](
        newAspect: AwsCallAspect[R1],
        r: ZEnvironment[R1]
    ): OrganizationsImpl[R1] = new OrganizationsImpl(api, newAspect, r)
    def listParents(
        request: ListParentsRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Parent.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListParentsRequest,
        ListParentsResponse,
        Parent
      ](
        "listParents",
        api.listParents,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.parents().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Parent.wrap(item))
        .provideEnvironment(r)
    def listParentsPaginated(
        request: ListParentsRequest
    ): IO[AwsError, zio.aws.organizations.model.ListParentsResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.ListParentsRequest,
        ListParentsResponse
      ]("listParents", api.listParents)(request.buildAwsValue())
        .map(zio.aws.organizations.model.ListParentsResponse.wrap)
        .provideEnvironment(r)
    def inviteAccountToOrganization(
        request: InviteAccountToOrganizationRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.InviteAccountToOrganizationResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.InviteAccountToOrganizationRequest,
      InviteAccountToOrganizationResponse
    ]("inviteAccountToOrganization", api.inviteAccountToOrganization)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.InviteAccountToOrganizationResponse.wrap)
      .provideEnvironment(r)
    def describeOrganization(): IO[
      AwsError,
      zio.aws.organizations.model.DescribeOrganizationResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeOrganizationRequest,
      DescribeOrganizationResponse
    ]("describeOrganization", api.describeOrganization)(
      DescribeOrganizationRequest.builder().build()
    ).map(zio.aws.organizations.model.DescribeOrganizationResponse.wrap)
      .provideEnvironment(r)
    def describePolicy(request: DescribePolicyRequest): IO[
      AwsError,
      zio.aws.organizations.model.DescribePolicyResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribePolicyRequest,
      DescribePolicyResponse
    ]("describePolicy", api.describePolicy)(request.buildAwsValue())
      .map(zio.aws.organizations.model.DescribePolicyResponse.wrap)
      .provideEnvironment(r)
    def createAccount(request: CreateAccountRequest): IO[
      AwsError,
      zio.aws.organizations.model.CreateAccountResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.CreateAccountRequest,
      CreateAccountResponse
    ]("createAccount", api.createAccount)(request.buildAwsValue())
      .map(zio.aws.organizations.model.CreateAccountResponse.wrap)
      .provideEnvironment(r)
    def moveAccount(request: MoveAccountRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.MoveAccountRequest,
        MoveAccountResponse
      ]("moveAccount", api.moveAccount)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def listAccounts(
        request: ListAccountsRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Account.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListAccountsRequest,
        ListAccountsResponse,
        Account
      ](
        "listAccounts",
        api.listAccounts,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.accounts().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Account.wrap(item))
        .provideEnvironment(r)
    def listAccountsPaginated(
        request: ListAccountsRequest
    ): IO[AwsError, zio.aws.organizations.model.ListAccountsResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.ListAccountsRequest,
        ListAccountsResponse
      ]("listAccounts", api.listAccounts)(request.buildAwsValue())
        .map(zio.aws.organizations.model.ListAccountsResponse.wrap)
        .provideEnvironment(r)
    def deleteOrganizationalUnit(
        request: DeleteOrganizationalUnitRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DeleteOrganizationalUnitRequest,
      DeleteOrganizationalUnitResponse
    ]("deleteOrganizationalUnit", api.deleteOrganizationalUnit)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def enableAllFeatures(request: EnableAllFeaturesRequest): IO[
      AwsError,
      zio.aws.organizations.model.EnableAllFeaturesResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.EnableAllFeaturesRequest,
      EnableAllFeaturesResponse
    ]("enableAllFeatures", api.enableAllFeatures)(request.buildAwsValue())
      .map(zio.aws.organizations.model.EnableAllFeaturesResponse.wrap)
      .provideEnvironment(r)
    def cancelHandshake(request: CancelHandshakeRequest): IO[
      AwsError,
      zio.aws.organizations.model.CancelHandshakeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.CancelHandshakeRequest,
      CancelHandshakeResponse
    ]("cancelHandshake", api.cancelHandshake)(request.buildAwsValue())
      .map(zio.aws.organizations.model.CancelHandshakeResponse.wrap)
      .provideEnvironment(r)
    def listAccountsForParent(
        request: ListAccountsForParentRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Account.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListAccountsForParentRequest,
        ListAccountsForParentResponse,
        Account
      ](
        "listAccountsForParent",
        api.listAccountsForParent,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.accounts().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Account.wrap(item))
        .provideEnvironment(r)
    def listAccountsForParentPaginated(
        request: ListAccountsForParentRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListAccountsForParentResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListAccountsForParentRequest,
      ListAccountsForParentResponse
    ]("listAccountsForParent", api.listAccountsForParent)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.ListAccountsForParentResponse.wrap)
      .provideEnvironment(r)
    def enablePolicyType(request: EnablePolicyTypeRequest): IO[
      AwsError,
      zio.aws.organizations.model.EnablePolicyTypeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.EnablePolicyTypeRequest,
      EnablePolicyTypeResponse
    ]("enablePolicyType", api.enablePolicyType)(request.buildAwsValue())
      .map(zio.aws.organizations.model.EnablePolicyTypeResponse.wrap)
      .provideEnvironment(r)
    def disablePolicyType(request: DisablePolicyTypeRequest): IO[
      AwsError,
      zio.aws.organizations.model.DisablePolicyTypeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DisablePolicyTypeRequest,
      DisablePolicyTypeResponse
    ]("disablePolicyType", api.disablePolicyType)(request.buildAwsValue())
      .map(zio.aws.organizations.model.DisablePolicyTypeResponse.wrap)
      .provideEnvironment(r)
    def describeOrganizationalUnit(
        request: DescribeOrganizationalUnitRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.DescribeOrganizationalUnitResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribeOrganizationalUnitRequest,
      DescribeOrganizationalUnitResponse
    ]("describeOrganizationalUnit", api.describeOrganizationalUnit)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.DescribeOrganizationalUnitResponse.wrap)
      .provideEnvironment(r)
    def listHandshakesForOrganization(
        request: ListHandshakesForOrganizationRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Handshake.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListHandshakesForOrganizationRequest,
        ListHandshakesForOrganizationResponse,
        Handshake
      ](
        "listHandshakesForOrganization",
        api.listHandshakesForOrganization,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.handshakes().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Handshake.wrap(item))
        .provideEnvironment(r)
    def listHandshakesForOrganizationPaginated(
        request: ListHandshakesForOrganizationRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListHandshakesForOrganizationResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListHandshakesForOrganizationRequest,
      ListHandshakesForOrganizationResponse
    ]("listHandshakesForOrganization", api.listHandshakesForOrganization)(
      request.buildAwsValue()
    ).map(
      zio.aws.organizations.model.ListHandshakesForOrganizationResponse.wrap
    ).provideEnvironment(r)
    def listTargetsForPolicy(request: ListTargetsForPolicyRequest): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.PolicyTargetSummary.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListTargetsForPolicyRequest,
      ListTargetsForPolicyResponse,
      PolicyTargetSummary
    ](
      "listTargetsForPolicy",
      api.listTargetsForPolicy,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.targets().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.PolicyTargetSummary.wrap(item))
      .provideEnvironment(r)
    def listTargetsForPolicyPaginated(request: ListTargetsForPolicyRequest): IO[
      AwsError,
      zio.aws.organizations.model.ListTargetsForPolicyResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListTargetsForPolicyRequest,
      ListTargetsForPolicyResponse
    ]("listTargetsForPolicy", api.listTargetsForPolicy)(request.buildAwsValue())
      .map(zio.aws.organizations.model.ListTargetsForPolicyResponse.wrap)
      .provideEnvironment(r)
    def detachPolicy(request: DetachPolicyRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.DetachPolicyRequest,
        DetachPolicyResponse
      ]("detachPolicy", api.detachPolicy)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def updatePolicy(
        request: UpdatePolicyRequest
    ): IO[AwsError, zio.aws.organizations.model.UpdatePolicyResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.UpdatePolicyRequest,
        UpdatePolicyResponse
      ]("updatePolicy", api.updatePolicy)(request.buildAwsValue())
        .map(zio.aws.organizations.model.UpdatePolicyResponse.wrap)
        .provideEnvironment(r)
    def putResourcePolicy(request: PutResourcePolicyRequest): IO[
      AwsError,
      zio.aws.organizations.model.PutResourcePolicyResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.PutResourcePolicyRequest,
      PutResourcePolicyResponse
    ]("putResourcePolicy", api.putResourcePolicy)(request.buildAwsValue())
      .map(zio.aws.organizations.model.PutResourcePolicyResponse.wrap)
      .provideEnvironment(r)
    def leaveOrganization(): IO[AwsError, Unit] =
      asyncRequestResponse[LeaveOrganizationRequest, LeaveOrganizationResponse](
        "leaveOrganization",
        api.leaveOrganization
      )(LeaveOrganizationRequest.builder().build()).unit.provideEnvironment(r)
    def enableAWSServiceAccess(
        request: EnableAwsServiceAccessRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.EnableAwsServiceAccessRequest,
      EnableAwsServiceAccessResponse
    ]("enableAWSServiceAccess", api.enableAWSServiceAccess)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def describeAccount(request: DescribeAccountRequest): IO[
      AwsError,
      zio.aws.organizations.model.DescribeAccountResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribeAccountRequest,
      DescribeAccountResponse
    ]("describeAccount", api.describeAccount)(request.buildAwsValue())
      .map(zio.aws.organizations.model.DescribeAccountResponse.wrap)
      .provideEnvironment(r)
    def deleteOrganization(): IO[AwsError, Unit] = asyncRequestResponse[
      DeleteOrganizationRequest,
      DeleteOrganizationResponse
    ]("deleteOrganization", api.deleteOrganization)(
      DeleteOrganizationRequest.builder().build()
    ).unit.provideEnvironment(r)
    def createOrganizationalUnit(request: CreateOrganizationalUnitRequest): IO[
      AwsError,
      zio.aws.organizations.model.CreateOrganizationalUnitResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.CreateOrganizationalUnitRequest,
      CreateOrganizationalUnitResponse
    ]("createOrganizationalUnit", api.createOrganizationalUnit)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.CreateOrganizationalUnitResponse.wrap)
      .provideEnvironment(r)
    def acceptHandshake(request: AcceptHandshakeRequest): IO[
      AwsError,
      zio.aws.organizations.model.AcceptHandshakeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.AcceptHandshakeRequest,
      AcceptHandshakeResponse
    ]("acceptHandshake", api.acceptHandshake)(request.buildAwsValue())
      .map(zio.aws.organizations.model.AcceptHandshakeResponse.wrap)
      .provideEnvironment(r)
    def listPoliciesForTarget(request: ListPoliciesForTargetRequest): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.PolicySummary.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListPoliciesForTargetRequest,
      ListPoliciesForTargetResponse,
      PolicySummary
    ](
      "listPoliciesForTarget",
      api.listPoliciesForTarget,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.policies().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.PolicySummary.wrap(item))
      .provideEnvironment(r)
    def listPoliciesForTargetPaginated(
        request: ListPoliciesForTargetRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListPoliciesForTargetResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListPoliciesForTargetRequest,
      ListPoliciesForTargetResponse
    ]("listPoliciesForTarget", api.listPoliciesForTarget)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.ListPoliciesForTargetResponse.wrap)
      .provideEnvironment(r)
    def listOrganizationalUnitsForParent(
        request: ListOrganizationalUnitsForParentRequest
    ): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.OrganizationalUnit.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListOrganizationalUnitsForParentRequest,
      ListOrganizationalUnitsForParentResponse,
      OrganizationalUnit
    ](
      "listOrganizationalUnitsForParent",
      api.listOrganizationalUnitsForParent,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.organizationalUnits().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.OrganizationalUnit.wrap(item))
      .provideEnvironment(r)
    def listOrganizationalUnitsForParentPaginated(
        request: ListOrganizationalUnitsForParentRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListOrganizationalUnitsForParentResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListOrganizationalUnitsForParentRequest,
      ListOrganizationalUnitsForParentResponse
    ]("listOrganizationalUnitsForParent", api.listOrganizationalUnitsForParent)(
      request.buildAwsValue()
    ).map(
      zio.aws.organizations.model.ListOrganizationalUnitsForParentResponse.wrap
    ).provideEnvironment(r)
    def updateOrganizationalUnit(
        request: UpdateOrganizationalUnitRequest
    ): IO[AwsError, ReadOnly] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.UpdateOrganizationalUnitRequest,
      UpdateOrganizationalUnitResponse
    ]("updateOrganizationalUnit", api.updateOrganizationalUnit)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.UpdateOrganizationalUnitResponse.wrap)
      .provideEnvironment(r)
    def listPolicies(request: ListPoliciesRequest): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.PolicySummary.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListPoliciesRequest,
      ListPoliciesResponse,
      PolicySummary
    ](
      "listPolicies",
      api.listPolicies,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.policies().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.PolicySummary.wrap(item))
      .provideEnvironment(r)
    def listPoliciesPaginated(
        request: ListPoliciesRequest
    ): IO[AwsError, zio.aws.organizations.model.ListPoliciesResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.ListPoliciesRequest,
        ListPoliciesResponse
      ]("listPolicies", api.listPolicies)(request.buildAwsValue())
        .map(zio.aws.organizations.model.ListPoliciesResponse.wrap)
        .provideEnvironment(r)
    def describeHandshake(request: DescribeHandshakeRequest): IO[
      AwsError,
      zio.aws.organizations.model.DescribeHandshakeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribeHandshakeRequest,
      DescribeHandshakeResponse
    ]("describeHandshake", api.describeHandshake)(request.buildAwsValue())
      .map(zio.aws.organizations.model.DescribeHandshakeResponse.wrap)
      .provideEnvironment(r)
    def describeCreateAccountStatus(
        request: DescribeCreateAccountStatusRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.DescribeCreateAccountStatusResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribeCreateAccountStatusRequest,
      DescribeCreateAccountStatusResponse
    ]("describeCreateAccountStatus", api.describeCreateAccountStatus)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.DescribeCreateAccountStatusResponse.wrap)
      .provideEnvironment(r)
    def closeAccount(request: CloseAccountRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.CloseAccountRequest,
        CloseAccountResponse
      ]("closeAccount", api.closeAccount)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def listRoots(
        request: ListRootsRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Root.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListRootsRequest,
        ListRootsResponse,
        Root
      ](
        "listRoots",
        api.listRoots,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.roots().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Root.wrap(item))
        .provideEnvironment(r)
    def listRootsPaginated(
        request: ListRootsRequest
    ): IO[AwsError, zio.aws.organizations.model.ListRootsResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.ListRootsRequest,
        ListRootsResponse
      ]("listRoots", api.listRoots)(request.buildAwsValue())
        .map(zio.aws.organizations.model.ListRootsResponse.wrap)
        .provideEnvironment(r)
    def listCreateAccountStatus(
        request: ListCreateAccountStatusRequest
    ): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.CreateAccountStatus.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListCreateAccountStatusRequest,
      ListCreateAccountStatusResponse,
      CreateAccountStatus
    ](
      "listCreateAccountStatus",
      api.listCreateAccountStatus,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.createAccountStatuses().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.CreateAccountStatus.wrap(item))
      .provideEnvironment(r)
    def listCreateAccountStatusPaginated(
        request: ListCreateAccountStatusRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListCreateAccountStatusResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListCreateAccountStatusRequest,
      ListCreateAccountStatusResponse
    ]("listCreateAccountStatus", api.listCreateAccountStatus)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.ListCreateAccountStatusResponse.wrap)
      .provideEnvironment(r)
    def untagResource(request: UntagResourceRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.UntagResourceRequest,
        UntagResourceResponse
      ]("untagResource", api.untagResource)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def removeAccountFromOrganization(
        request: RemoveAccountFromOrganizationRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.RemoveAccountFromOrganizationRequest,
      RemoveAccountFromOrganizationResponse
    ]("removeAccountFromOrganization", api.removeAccountFromOrganization)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def deleteResourcePolicy(): IO[AwsError, Unit] = asyncRequestResponse[
      DeleteResourcePolicyRequest,
      DeleteResourcePolicyResponse
    ]("deleteResourcePolicy", api.deleteResourcePolicy)(
      DeleteResourcePolicyRequest.builder().build()
    ).unit.provideEnvironment(r)
    def listAWSServiceAccessForOrganization(
        request: ListAwsServiceAccessForOrganizationRequest
    ): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.EnabledServicePrincipal.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListAwsServiceAccessForOrganizationRequest,
      ListAwsServiceAccessForOrganizationResponse,
      EnabledServicePrincipal
    ](
      "listAWSServiceAccessForOrganization",
      api.listAWSServiceAccessForOrganization,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.enabledServicePrincipals().asScala)
    )(request.buildAwsValue())
      .map(item =>
        zio.aws.organizations.model.EnabledServicePrincipal.wrap(item)
      )
      .provideEnvironment(r)
    def listAWSServiceAccessForOrganizationPaginated(
        request: ListAwsServiceAccessForOrganizationRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListAwsServiceAccessForOrganizationResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListAwsServiceAccessForOrganizationRequest,
      ListAwsServiceAccessForOrganizationResponse
    ](
      "listAWSServiceAccessForOrganization",
      api.listAWSServiceAccessForOrganization
    )(request.buildAwsValue())
      .map(
        zio.aws.organizations.model.ListAwsServiceAccessForOrganizationResponse.wrap
      )
      .provideEnvironment(r)
    def deregisterDelegatedAdministrator(
        request: DeregisterDelegatedAdministratorRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DeregisterDelegatedAdministratorRequest,
      DeregisterDelegatedAdministratorResponse
    ]("deregisterDelegatedAdministrator", api.deregisterDelegatedAdministrator)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def declineHandshake(request: DeclineHandshakeRequest): IO[
      AwsError,
      zio.aws.organizations.model.DeclineHandshakeResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DeclineHandshakeRequest,
      DeclineHandshakeResponse
    ]("declineHandshake", api.declineHandshake)(request.buildAwsValue())
      .map(zio.aws.organizations.model.DeclineHandshakeResponse.wrap)
      .provideEnvironment(r)
    def attachPolicy(request: AttachPolicyRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.AttachPolicyRequest,
        AttachPolicyResponse
      ]("attachPolicy", api.attachPolicy)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def listTagsForResource(
        request: ListTagsForResourceRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Tag.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListTagsForResourceRequest,
        ListTagsForResourceResponse,
        Tag
      ](
        "listTagsForResource",
        api.listTagsForResource,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.tags().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Tag.wrap(item))
        .provideEnvironment(r)
    def listTagsForResourcePaginated(request: ListTagsForResourceRequest): IO[
      AwsError,
      zio.aws.organizations.model.ListTagsForResourceResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListTagsForResourceRequest,
      ListTagsForResourceResponse
    ]("listTagsForResource", api.listTagsForResource)(request.buildAwsValue())
      .map(zio.aws.organizations.model.ListTagsForResourceResponse.wrap)
      .provideEnvironment(r)
    def listDelegatedServicesForAccount(
        request: ListDelegatedServicesForAccountRequest
    ): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.DelegatedService.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListDelegatedServicesForAccountRequest,
      ListDelegatedServicesForAccountResponse,
      DelegatedService
    ](
      "listDelegatedServicesForAccount",
      api.listDelegatedServicesForAccount,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.delegatedServices().asScala)
    )(request.buildAwsValue())
      .map(item => zio.aws.organizations.model.DelegatedService.wrap(item))
      .provideEnvironment(r)
    def listDelegatedServicesForAccountPaginated(
        request: ListDelegatedServicesForAccountRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListDelegatedServicesForAccountResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListDelegatedServicesForAccountRequest,
      ListDelegatedServicesForAccountResponse
    ]("listDelegatedServicesForAccount", api.listDelegatedServicesForAccount)(
      request.buildAwsValue()
    ).map(
      zio.aws.organizations.model.ListDelegatedServicesForAccountResponse.wrap
    ).provideEnvironment(r)
    def registerDelegatedAdministrator(
        request: RegisterDelegatedAdministratorRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.RegisterDelegatedAdministratorRequest,
      RegisterDelegatedAdministratorResponse
    ]("registerDelegatedAdministrator", api.registerDelegatedAdministrator)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def describeEffectivePolicy(request: DescribeEffectivePolicyRequest): IO[
      AwsError,
      zio.aws.organizations.model.DescribeEffectivePolicyResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DescribeEffectivePolicyRequest,
      DescribeEffectivePolicyResponse
    ]("describeEffectivePolicy", api.describeEffectivePolicy)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.DescribeEffectivePolicyResponse.wrap)
      .provideEnvironment(r)
    def createPolicy(
        request: CreatePolicyRequest
    ): IO[AwsError, zio.aws.organizations.model.CreatePolicyResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.CreatePolicyRequest,
        CreatePolicyResponse
      ]("createPolicy", api.createPolicy)(request.buildAwsValue())
        .map(zio.aws.organizations.model.CreatePolicyResponse.wrap)
        .provideEnvironment(r)
    def tagResource(request: TagResourceRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.TagResourceRequest,
        TagResourceResponse
      ]("tagResource", api.tagResource)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def listChildren(
        request: ListChildrenRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Child.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListChildrenRequest,
        ListChildrenResponse,
        Child
      ](
        "listChildren",
        api.listChildren,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.children().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Child.wrap(item))
        .provideEnvironment(r)
    def listChildrenPaginated(
        request: ListChildrenRequest
    ): IO[AwsError, zio.aws.organizations.model.ListChildrenResponse.ReadOnly] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.ListChildrenRequest,
        ListChildrenResponse
      ]("listChildren", api.listChildren)(request.buildAwsValue())
        .map(zio.aws.organizations.model.ListChildrenResponse.wrap)
        .provideEnvironment(r)
    def deletePolicy(request: DeletePolicyRequest): IO[AwsError, Unit] =
      asyncRequestResponse[
        software.amazon.awssdk.services.organizations.model.DeletePolicyRequest,
        DeletePolicyResponse
      ]("deletePolicy", api.deletePolicy)(request.buildAwsValue()).unit
        .provideEnvironment(r)
    def describeResourcePolicy(): IO[
      AwsError,
      zio.aws.organizations.model.DescribeResourcePolicyResponse.ReadOnly
    ] = asyncRequestResponse[
      DescribeResourcePolicyRequest,
      DescribeResourcePolicyResponse
    ]("describeResourcePolicy", api.describeResourcePolicy)(
      DescribeResourcePolicyRequest.builder().build()
    ).map(zio.aws.organizations.model.DescribeResourcePolicyResponse.wrap)
      .provideEnvironment(r)
    def listHandshakesForAccount(
        request: ListHandshakesForAccountRequest
    ): ZStream[Any, AwsError, zio.aws.organizations.model.Handshake.ReadOnly] =
      asyncSimplePaginatedRequest[
        software.amazon.awssdk.services.organizations.model.ListHandshakesForAccountRequest,
        ListHandshakesForAccountResponse,
        Handshake
      ](
        "listHandshakesForAccount",
        api.listHandshakesForAccount,
        (r, token) => r.toBuilder().nextToken(token).build(),
        r => scala.Option(r.nextToken()),
        r => zio.Chunk.fromIterable(r.handshakes().asScala)
      )(request.buildAwsValue())
        .map(item => zio.aws.organizations.model.Handshake.wrap(item))
        .provideEnvironment(r)
    def listHandshakesForAccountPaginated(
        request: ListHandshakesForAccountRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListHandshakesForAccountResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListHandshakesForAccountRequest,
      ListHandshakesForAccountResponse
    ]("listHandshakesForAccount", api.listHandshakesForAccount)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.ListHandshakesForAccountResponse.wrap)
      .provideEnvironment(r)
    def createGovCloudAccount(request: CreateGovCloudAccountRequest): IO[
      AwsError,
      zio.aws.organizations.model.CreateGovCloudAccountResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.CreateGovCloudAccountRequest,
      CreateGovCloudAccountResponse
    ]("createGovCloudAccount", api.createGovCloudAccount)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.CreateGovCloudAccountResponse.wrap)
      .provideEnvironment(r)
    def disableAWSServiceAccess(
        request: DisableAwsServiceAccessRequest
    ): IO[AwsError, Unit] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.DisableAwsServiceAccessRequest,
      DisableAwsServiceAccessResponse
    ]("disableAWSServiceAccess", api.disableAWSServiceAccess)(
      request.buildAwsValue()
    ).unit.provideEnvironment(r)
    def listDelegatedAdministrators(
        request: ListDelegatedAdministratorsRequest
    ): ZStream[
      Any,
      AwsError,
      zio.aws.organizations.model.DelegatedAdministrator.ReadOnly
    ] = asyncSimplePaginatedRequest[
      software.amazon.awssdk.services.organizations.model.ListDelegatedAdministratorsRequest,
      ListDelegatedAdministratorsResponse,
      DelegatedAdministrator
    ](
      "listDelegatedAdministrators",
      api.listDelegatedAdministrators,
      (r, token) => r.toBuilder().nextToken(token).build(),
      r => scala.Option(r.nextToken()),
      r => zio.Chunk.fromIterable(r.delegatedAdministrators().asScala)
    )(request.buildAwsValue())
      .map(item =>
        zio.aws.organizations.model.DelegatedAdministrator.wrap(item)
      )
      .provideEnvironment(r)
    def listDelegatedAdministratorsPaginated(
        request: ListDelegatedAdministratorsRequest
    ): IO[
      AwsError,
      zio.aws.organizations.model.ListDelegatedAdministratorsResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.ListDelegatedAdministratorsRequest,
      ListDelegatedAdministratorsResponse
    ]("listDelegatedAdministrators", api.listDelegatedAdministrators)(
      request.buildAwsValue()
    ).map(zio.aws.organizations.model.ListDelegatedAdministratorsResponse.wrap)
      .provideEnvironment(r)
    def createOrganization(request: CreateOrganizationRequest): IO[
      AwsError,
      zio.aws.organizations.model.CreateOrganizationResponse.ReadOnly
    ] = asyncRequestResponse[
      software.amazon.awssdk.services.organizations.model.CreateOrganizationRequest,
      CreateOrganizationResponse
    ]("createOrganization", api.createOrganization)(request.buildAwsValue())
      .map(zio.aws.organizations.model.CreateOrganizationResponse.wrap)
      .provideEnvironment(r)
  }
  def listParents(request: ListParentsRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Parent.ReadOnly
  ] = ZStream.serviceWithStream(_.listParents(request))
  def listParentsPaginated(request: ListParentsRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListParentsResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listParentsPaginated(request))
  def inviteAccountToOrganization(
      request: InviteAccountToOrganizationRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.InviteAccountToOrganizationResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.inviteAccountToOrganization(request))
  def describeOrganization(): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeOrganizationResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeOrganization())
  def describePolicy(request: DescribePolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describePolicy(request))
  def createAccount(request: CreateAccountRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreateAccountResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.createAccount(request))
  def moveAccount(
      request: MoveAccountRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.moveAccount(request))
  def listAccounts(request: ListAccountsRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Account.ReadOnly
  ] = ZStream.serviceWithStream(_.listAccounts(request))
  def listAccountsPaginated(request: ListAccountsRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListAccountsResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listAccountsPaginated(request))
  def deleteOrganizationalUnit(
      request: DeleteOrganizationalUnitRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.deleteOrganizationalUnit(request))
  def enableAllFeatures(request: EnableAllFeaturesRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.EnableAllFeaturesResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.enableAllFeatures(request))
  def cancelHandshake(request: CancelHandshakeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CancelHandshakeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.cancelHandshake(request))
  def listAccountsForParent(request: ListAccountsForParentRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Account.ReadOnly
  ] = ZStream.serviceWithStream(_.listAccountsForParent(request))
  def listAccountsForParentPaginated(
      request: ListAccountsForParentRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListAccountsForParentResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listAccountsForParentPaginated(request))
  def enablePolicyType(request: EnablePolicyTypeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.EnablePolicyTypeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.enablePolicyType(request))
  def disablePolicyType(request: DisablePolicyTypeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DisablePolicyTypeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.disablePolicyType(request))
  def describeOrganizationalUnit(
      request: DescribeOrganizationalUnitRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeOrganizationalUnitResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeOrganizationalUnit(request))
  def listHandshakesForOrganization(
      request: ListHandshakesForOrganizationRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Handshake.ReadOnly
  ] = ZStream.serviceWithStream(_.listHandshakesForOrganization(request))
  def listHandshakesForOrganizationPaginated(
      request: ListHandshakesForOrganizationRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListHandshakesForOrganizationResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listHandshakesForOrganizationPaginated(request))
  def listTargetsForPolicy(request: ListTargetsForPolicyRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.PolicyTargetSummary.ReadOnly
  ] = ZStream.serviceWithStream(_.listTargetsForPolicy(request))
  def listTargetsForPolicyPaginated(request: ListTargetsForPolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListTargetsForPolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listTargetsForPolicyPaginated(request))
  def detachPolicy(
      request: DetachPolicyRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.detachPolicy(request))
  def updatePolicy(request: UpdatePolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.UpdatePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.updatePolicy(request))
  def putResourcePolicy(request: PutResourcePolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.PutResourcePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.putResourcePolicy(request))
  def leaveOrganization()
      : ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.leaveOrganization())
  def enableAWSServiceAccess(
      request: EnableAwsServiceAccessRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.enableAWSServiceAccess(request))
  def describeAccount(request: DescribeAccountRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeAccountResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeAccount(request))
  def deleteOrganization()
      : ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.deleteOrganization())
  def createOrganizationalUnit(request: CreateOrganizationalUnitRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreateOrganizationalUnitResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.createOrganizationalUnit(request))
  def acceptHandshake(request: AcceptHandshakeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.AcceptHandshakeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.acceptHandshake(request))
  def listPoliciesForTarget(request: ListPoliciesForTargetRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.PolicySummary.ReadOnly
  ] = ZStream.serviceWithStream(_.listPoliciesForTarget(request))
  def listPoliciesForTargetPaginated(
      request: ListPoliciesForTargetRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListPoliciesForTargetResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listPoliciesForTargetPaginated(request))
  def listOrganizationalUnitsForParent(
      request: ListOrganizationalUnitsForParentRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.OrganizationalUnit.ReadOnly
  ] = ZStream.serviceWithStream(_.listOrganizationalUnitsForParent(request))
  def listOrganizationalUnitsForParentPaginated(
      request: ListOrganizationalUnitsForParentRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListOrganizationalUnitsForParentResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listOrganizationalUnitsForParentPaginated(request))
  def updateOrganizationalUnit(
      request: UpdateOrganizationalUnitRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, ReadOnly] =
    ZIO.serviceWithZIO(_.updateOrganizationalUnit(request))
  def listPolicies(request: ListPoliciesRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.PolicySummary.ReadOnly
  ] = ZStream.serviceWithStream(_.listPolicies(request))
  def listPoliciesPaginated(request: ListPoliciesRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListPoliciesResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listPoliciesPaginated(request))
  def describeHandshake(request: DescribeHandshakeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeHandshakeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeHandshake(request))
  def describeCreateAccountStatus(
      request: DescribeCreateAccountStatusRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeCreateAccountStatusResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeCreateAccountStatus(request))
  def closeAccount(
      request: CloseAccountRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.closeAccount(request))
  def listRoots(request: ListRootsRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Root.ReadOnly
  ] = ZStream.serviceWithStream(_.listRoots(request))
  def listRootsPaginated(request: ListRootsRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListRootsResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listRootsPaginated(request))
  def listCreateAccountStatus(request: ListCreateAccountStatusRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreateAccountStatus.ReadOnly
  ] = ZStream.serviceWithStream(_.listCreateAccountStatus(request))
  def listCreateAccountStatusPaginated(
      request: ListCreateAccountStatusRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListCreateAccountStatusResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listCreateAccountStatusPaginated(request))
  def untagResource(
      request: UntagResourceRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.untagResource(request))
  def removeAccountFromOrganization(
      request: RemoveAccountFromOrganizationRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.removeAccountFromOrganization(request))
  def deleteResourcePolicy()
      : ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.deleteResourcePolicy())
  def listAWSServiceAccessForOrganization(
      request: ListAwsServiceAccessForOrganizationRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.EnabledServicePrincipal.ReadOnly
  ] = ZStream.serviceWithStream(_.listAWSServiceAccessForOrganization(request))
  def listAWSServiceAccessForOrganizationPaginated(
      request: ListAwsServiceAccessForOrganizationRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListAwsServiceAccessForOrganizationResponse.ReadOnly
  ] =
    ZIO.serviceWithZIO(_.listAWSServiceAccessForOrganizationPaginated(request))
  def deregisterDelegatedAdministrator(
      request: DeregisterDelegatedAdministratorRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.deregisterDelegatedAdministrator(request))
  def declineHandshake(request: DeclineHandshakeRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DeclineHandshakeResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.declineHandshake(request))
  def attachPolicy(
      request: AttachPolicyRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.attachPolicy(request))
  def listTagsForResource(request: ListTagsForResourceRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Tag.ReadOnly
  ] = ZStream.serviceWithStream(_.listTagsForResource(request))
  def listTagsForResourcePaginated(request: ListTagsForResourceRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListTagsForResourceResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listTagsForResourcePaginated(request))
  def listDelegatedServicesForAccount(
      request: ListDelegatedServicesForAccountRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DelegatedService.ReadOnly
  ] = ZStream.serviceWithStream(_.listDelegatedServicesForAccount(request))
  def listDelegatedServicesForAccountPaginated(
      request: ListDelegatedServicesForAccountRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListDelegatedServicesForAccountResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listDelegatedServicesForAccountPaginated(request))
  def registerDelegatedAdministrator(
      request: RegisterDelegatedAdministratorRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.registerDelegatedAdministrator(request))
  def describeEffectivePolicy(request: DescribeEffectivePolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeEffectivePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeEffectivePolicy(request))
  def createPolicy(request: CreatePolicyRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreatePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.createPolicy(request))
  def tagResource(
      request: TagResourceRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.tagResource(request))
  def listChildren(request: ListChildrenRequest): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Child.ReadOnly
  ] = ZStream.serviceWithStream(_.listChildren(request))
  def listChildrenPaginated(request: ListChildrenRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListChildrenResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listChildrenPaginated(request))
  def deletePolicy(
      request: DeletePolicyRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.deletePolicy(request))
  def describeResourcePolicy(): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DescribeResourcePolicyResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.describeResourcePolicy())
  def listHandshakesForAccount(
      request: ListHandshakesForAccountRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.Handshake.ReadOnly
  ] = ZStream.serviceWithStream(_.listHandshakesForAccount(request))
  def listHandshakesForAccountPaginated(
      request: ListHandshakesForAccountRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListHandshakesForAccountResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listHandshakesForAccountPaginated(request))
  def createGovCloudAccount(request: CreateGovCloudAccountRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreateGovCloudAccountResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.createGovCloudAccount(request))
  def disableAWSServiceAccess(
      request: DisableAwsServiceAccessRequest
  ): ZIO[zio.aws.organizations.Organizations, AwsError, Unit] =
    ZIO.serviceWithZIO(_.disableAWSServiceAccess(request))
  def listDelegatedAdministrators(
      request: ListDelegatedAdministratorsRequest
  ): ZStream[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.DelegatedAdministrator.ReadOnly
  ] = ZStream.serviceWithStream(_.listDelegatedAdministrators(request))
  def listDelegatedAdministratorsPaginated(
      request: ListDelegatedAdministratorsRequest
  ): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.ListDelegatedAdministratorsResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.listDelegatedAdministratorsPaginated(request))
  def createOrganization(request: CreateOrganizationRequest): ZIO[
    zio.aws.organizations.Organizations,
    AwsError,
    zio.aws.organizations.model.CreateOrganizationResponse.ReadOnly
  ] = ZIO.serviceWithZIO(_.createOrganization(request))
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy