
com.hubspot.slack.client.models.interaction.views.ViewExternalSelect Maven / Gradle / Ivy
package com.hubspot.slack.client.models.interaction.views;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.hubspot.immutables.validation.InvalidImmutableStateException;
import com.hubspot.slack.client.models.blocks.objects.Option;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
import javax.annotation.ParametersAreNonnullByDefault;
import javax.annotation.concurrent.Immutable;
import javax.annotation.concurrent.NotThreadSafe;
import org.immutables.value.Generated;
/**
* Immutable implementation of {@link ViewExternalSelectIF}.
*
* Use the builder to create immutable instances:
* {@code ViewExternalSelect.builder()}.
*/
@Generated(from = "ViewExternalSelectIF", generator = "Immutables")
@SuppressWarnings({"all"})
@SuppressFBWarnings
@ParametersAreNonnullByDefault
@javax.annotation.processing.Generated("org.immutables.processor.ProxyProcessor")
@Immutable
public final class ViewExternalSelect
implements ViewExternalSelectIF {
private final ViewInputType type;
private final @Nullable Option selectedOption;
private ViewExternalSelect(
ViewInputType type,
@Nullable Option selectedOption) {
this.type = type;
this.selectedOption = selectedOption;
}
/**
* @return The value of the {@code type} attribute
*/
@JsonProperty
@Override
public ViewInputType getType() {
return type;
}
/**
* @return The value of the {@code selectedOption} attribute
*/
@JsonProperty
@Override
public Optional