001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package dev.metaschema.databind.codegen;
007
008import com.squareup.javapoet.ClassName;
009
010import java.nio.file.Path;
011
012/**
013 * Provides information about a generated Java class file.
014 * <p>
015 * This interface represents a Java class that has been generated during
016 * Metaschema processing, providing access to both the physical file location
017 * and the type information for the generated class.
018 */
019public interface IGeneratedClass {
020  /**
021   * Get the file the class was written to.
022   *
023   * @return the class file path
024   */
025  Path getClassFile();
026
027  /**
028   * Get the type info for the class.
029   *
030   * @return the class's type info
031   */
032  ClassName getClassName();
033}