static Map.Entry<TextDecoration, Stream<TagResolver>> resolvers(final TextDecoration decoration, final @Nullable String shortName, final @NotNull String@NotNull... secondaryAliases) {
    final String canonicalName = TextDecoration.NAMES.key(decoration);
    final Set<String> names = new HashSet<>();
    names.add(canonicalName);
    if (shortName != null) names.add(shortName);
    Collections.addAll(names, secondaryAliases);

    return new AbstractMap.SimpleImmutableEntry<>(decoration, Stream.concat(
      Stream.of(SerializableResolver.claimingStyle(
          names,
          (args, ctx) -> DecorationTag.create(decoration, args, ctx),
          claim(decoration, (state, emitter) -> emit(canonicalName, shortName == null ? canonicalName : shortName, state, emitter))
        )),
      names.stream().map(name -> TagResolver.resolver(DecorationTag.REVERT + name, DecorationTag.createNegated(decoration)))
    ));
  }
A transformation that applies any {@link TextDecoration}.

@since 4.10.0
text-minimessage/src/main/java/net/kyori/adventure/text/minimessage/tag/standard/DecorationTag.java