1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package dev.metaschema.databind.codegen;
7   
8   import com.squareup.javapoet.ClassName;
9   
10  import java.nio.file.Path;
11  
12  /**
13   * Provides information about a generated Java class file.
14   * <p>
15   * This interface represents a Java class that has been generated during
16   * Metaschema processing, providing access to both the physical file location
17   * and the type information for the generated class.
18   */
19  public interface IGeneratedClass {
20    /**
21     * Get the file the class was written to.
22     *
23     * @return the class file path
24     */
25    Path getClassFile();
26  
27    /**
28     * Get the type info for the class.
29     *
30     * @return the class's type info
31     */
32    ClassName getClassName();
33  }