1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package dev.metaschema.core.model;
7   
8   import edu.umd.cs.findbugs.annotations.NonNull;
9   
10  /**
11   * Represents a model instance that has a JSON property name.
12   * <p>
13   * This interface provides access to the name used when the instance appears in
14   * JSON or YAML serialization.
15   */
16  @FunctionalInterface
17  public interface IJsonInstance {
18    /**
19     * Get the name used for the instance in JSON/YAML serialization.
20     *
21     * @return the JSON property name
22     */
23    @NonNull
24    String getJsonName();
25  }