docs: public Waiter<DescribeClusterSnapshotsRequest> snapshotAvailable() {
  
          return new WaiterBuilder<DescribeClusterSnapshotsRequest, DescribeClusterSnapshotsResult>()
                  .withSdkFunction(new DescribeClusterSnapshotsFunction(client))
                  .withAcceptors(new SnapshotAvailable.IsAvailableMatcher(), new SnapshotAvailable.IsFailedMatcher(), new SnapshotAvailable.IsDeletedMatcher())
                  .withDefaultPollingStrategy(new PollingStrategy(new MaxAttemptsRetryStrategy(20), new FixedDelayStrategy(15)))
                  .withExecutorService(executorService).build();
      }