package click.kamil.springstatemachineexporter.analysis.model;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Builder;
import lombok.Data;
import lombok.extern.jackson.Jacksonized;

@Data
@Builder(toBuilder = true)
@Jacksonized
@JsonIgnoreProperties(ignoreUnknown = true)
public class MatchedTransition {
    private final String sourceState;
    private final String targetState;
    private final String event;
    /** Precomputed {@code #link_*} suffix for HTML/SVG highlight; optional in JSON exports. */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private final String linkKey;
}
