smithy.waiters.WaiterName.scala Maven / Gradle / Ivy
package smithy.waiters
import smithy4s.Hints
import smithy4s.Newtype
import smithy4s.Schema
import smithy4s.ShapeId
import smithy4s.schema.Schema.bijection
import smithy4s.schema.Schema.string
object WaiterName extends Newtype[String] {
val id: ShapeId = ShapeId("smithy.waiters", "WaiterName")
val hints: Hints = Hints.empty
val underlyingSchema: Schema[String] = string.withId(id).addHints(hints).validated(smithy.api.Pattern(s"^[A-Z]+[A-Za-z0-9]*$$"))
implicit val schema: Schema[WaiterName] = bijection(underlyingSchema, asBijection)
}