docs: public Waiter<DescribeCustomerGatewaysRequest> customerGatewayAvailable() {
  
          return new WaiterBuilder<DescribeCustomerGatewaysRequest, DescribeCustomerGatewaysResult>()
                  .withSdkFunction(new DescribeCustomerGatewaysFunction(client))
                  .withAcceptors(new CustomerGatewayAvailable.IsAvailableMatcher(), new CustomerGatewayAvailable.IsDeletedMatcher(),
                          new CustomerGatewayAvailable.IsDeletingMatcher())
                  .withDefaultPollingStrategy(new PollingStrategy(new MaxAttemptsRetryStrategy(40), new FixedDelayStrategy(15)))
                  .withExecutorService(executorService).build();
      }