package org.etsi.osl.tmf.pm628.model;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;

import javax.annotation.Generated;


@JsonIgnoreProperties(
  value = "@type", // ignore manually set @type, it will be automatically generated by Jackson during serialization
  allowSetters = true // allows the @type to be set during deserialization
)
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "@type", visible = true)
@JsonSubTypes({
  @JsonSubTypes.Type(value = DataAccessEndpointMVO.class, name = "DataAccessEndpoint"),
  @JsonSubTypes.Type(value = LogicalResourceMVO.class, name = "LogicalResource"),
  @JsonSubTypes.Type(value = ResourceMVO.class, name = "Resource"),
  @JsonSubTypes.Type(value = ResourceRefMVO.class, name = "ResourceRef"),
  @JsonSubTypes.Type(value = ResourceRefMVO.class, name = "ResourceRef_MVO"),
  @JsonSubTypes.Type(value = ResourceMVO.class, name = "Resource_MVO")
})

@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
public interface ResourceRefOrValueMVO {
    public String getType();
    public void setType(String type);
}
