
com.hubspot.slack.client.models.blocks.elements.UrlInputIF Maven / Gradle / Ivy
package com.hubspot.slack.client.models.blocks.elements;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.databind.PropertyNamingStrategies.SnakeCaseStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import com.hubspot.immutables.style.HubSpotStyle;
import com.hubspot.slack.client.models.blocks.SlackBlockNormalizer;
import com.hubspot.slack.client.models.blocks.objects.Text;
import java.util.Optional;
import org.immutables.value.Value;
import org.immutables.value.Value.Check;
import org.immutables.value.Value.Immutable;
@Immutable
@HubSpotStyle
@JsonNaming(SnakeCaseStrategy.class)
public interface UrlInputIF extends BlockElement, HasActionId {
String TYPE = "url_text_input";
@Override
@Value.Derived
default String getType() {
return TYPE;
}
@Value.Parameter
String getActionId();
Optional getPlaceholder();
Optional getInitialValue();
@JsonSetter("focus_on_load")
@JsonProperty("is_focus_on_load")
Optional isFocusOnLoad();
@Check
default UrlInputIF validate() {
return SlackBlockNormalizer.normalize(this);
}
}