> ## Documentation Index
> Fetch the complete documentation index at: https://cantonfoundation-generated-reference-full-stack-preview.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# com.daml.ledger.javaapi.data.codegen

> Current Java types in com.daml.ledger.javaapi.data.codegen.

<div class="x2mdx-ref-page x2mdx-ref-page--collection" />

<p class="x2mdx-ref-back"><a href="../../java-bindings">Back to Java Bindings</a></p>

<div class="x2mdx-ref-hero">
  <p class="x2mdx-ref-eyebrow">Java package</p>

  <h1 class="x2mdx-ref-title">com.daml.ledger.javaapi.data.codegen</h1>

  <p class="x2mdx-ref-summary">32 current types</p>

  <div class="x2mdx-ref-badges">
    <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

    <a class="x2mdx-ref-badge x2mdx-ref-badge--added" href="#history-added-3-5-1">Added 3.5.1</a>
  </div>
</div>

## Types

<div class="x2mdx-ref-card-grid">
  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./bykey">ByKey</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Parent of all generated ByKey classes within templates and interfaces.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./bykey-tointerface">ByKey.ToInterface</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Parent of all generated ByKey classes within interfaces. These need to pass both the template and interface ID.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./choice">Choice</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">This represents a Daml choice that can be exercised on ContractIds of type ContractId\<Tpl>.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contract">Contract</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">A superclass for all codegen-generated Contracts.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion">ContractCompanion</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Metadata and utilities associated with a template as a whole, rather than one single contract made from that template. Application code should not instantiate or subclass; instead, refer to the COMPANION field on generated Template subclasses. All protected members herein are considered part of the INTERNAL API. Every instance is either a ContractCompanion.WithKey or ContractCompanion.WithoutKey, depending on whether the template defined a key type. ContractCompanion.WithKey defines extra utilities for working with contract keys.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion-fromjson">ContractCompanion.FromJson</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion-withkey">ContractCompanion.WithKey</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion-withkey-newcontract">ContractCompanion.WithKey.NewContract</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion-withoutkey">ContractCompanion.WithoutKey</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractcompanion-withoutkey-newcontract">ContractCompanion.WithoutKey.NewContract</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractdecoder">ContractDecoder</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractid">ContractId</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">This class is used as a super class for all concrete ContractIds generated by the java codegen with the following properties: Foo.ContractId fooCid = new Foo.ContractId("test"); Bar.ContractId barCid = new Bar.ContractId("test"); ContractId\<Foo> genericFooCid = new ContractId\<>("test"); ContractId\<Foo> genericBarCid = new ContractId\<>("test"); fooCid.equals(genericFooCid) == true; genericFooCid.equals(fooCid) == true; fooCid.equals(barCid) == false; barCid.equals(fooCid) == false; Due to erase, we cannot distinguish ContractId\<Foo> from ContractId\<Bar>, thus: fooCid.equals(genericBarCid) == true genericBarCid.equals(fooCid) == true genericFooCid.equals(genericBarCid) == true genericBarCid.equals(genericFooCid) == true</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contracttypecompanion">ContractTypeCompanion</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">The commonality between ContractCompanion and InterfaceCompanion.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contracttypecompanion-package">ContractTypeCompanion.Package</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./contractwithkey">ContractWithKey</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">A superclass for all codegen-generated Contracts whose templates have a key defined.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./createand">CreateAnd</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Parent of all generated CreateAnd classes within templates and interfaces.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./createand-tointerface">CreateAnd.ToInterface</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Parent of all generated CreateAnd classes within interfaces. These need to pass both the template and interface ID.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./created">Created</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">This class contains information related to a result after a contract is created. Application code should not instantiate or subclass;</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./damlenum">DamlEnum</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Base interface of all decoded-to-codegen Daml enums. Its encoded counterpart is DamlEnum, which can be produced with toValue().</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./damlrecord">DamlRecord</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Base class of all decoded-to-codegen Daml records with no type parameters. This category includes all Template payloads, all interface views, and \[by convention albeit not by rule] all choice arguments. Its encoded counterpart is DamlRecord, which can be produced with toValue().</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./defineddatatype">DefinedDataType</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">The codegen-decoded form of any of these: what DamlRecord describes, a Variant without type parameters, or any DamlEnum. Its encoded counterpart is Value, which can be produced with toValue().</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./exercised">Exercised</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">This class contains information related to the result after a choice is exercised. Application code should not instantiate or subclass;</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./exercises">Exercises</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Root of all generated Exercises interfaces for templates and Daml interfaces.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./exercises-archivable">Exercises.Archivable</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Adds exerciseArchive() to every exercise target. The goal is to correct the problem of having ContractId implement Exercises.makeExerciseCmd(com.daml.ledger.javaapi.data.codegen.Choice\<?, ? super A, R>, A) directly. That was a mistake, but one at least obviated by the fact that Exercises.makeExerciseCmd(com.daml.ledger.javaapi.data.codegen.Choice\<?, ? super A, R>, A) is clearly part of the internal API, so if you use it directly anyway and you get weird exceptions, you get to keep both pieces of your program. With exerciseArchive() we can correct the problem by having Exercises.Archivable be the real Exercises interface, and the distinction can be flattened when breaking compatibility.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./hascommands">HasCommands</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">This is an interface describing classes that contains or can generate a list of Command</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./interfacecompanion">InterfaceCompanion</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Metadata and utilities associated with an interface as a whole. Its subclasses serve to disambiguate various generated toInterface overloads.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./interfacecompanion-fromjson">InterfaceCompanion.FromJson</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./primitivevaluedecoders">PrimitiveValueDecoders</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">ValueDecoders for Daml types that are not code-generated.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./unknowntrailingfieldpolicy">UnknownTrailingFieldPolicy</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.5.1</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Policy for handling unknown trailing fields when decoding a Daml record into a Java Class by codegen</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./update">Update</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Java type reference.</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./valuedecoder">ValueDecoder</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">A converter from the encoded form of a Daml value, represented by Value, to the codegen-decoded form, represented by Data. Every codegen class for a template, record, or variant includes a valueDecoder method that produces one of these. If the data type has type parameters, valueDecoder has arguments that correspond to ValueDecoders for those type arguments. For primitive types that are not code-generated, see PrimitiveValueDecoders. // given template 'Foo', and encoded payload 'Value fooValue' Foo foo = Foo.valueDecoder().decode(fooValue); // given Daml datatypes 'Bar a b' and 'Baz', // and encoded 'Bar' 'Value barValue' Bar\<Baz, Long> bar = Bar.valueDecoder( Baz.valueDecoder(), PrimitiveValueDecoders.fromInt64) .decode(barValue); Bar\<List\<Baz>, Map\<Long, String>> barWithAggregates = Bar.valueDecoder( PrimitiveValueDecoders.fromList(Baz.valueDecoder), PrimitiveValueDecoders.fromGenMap( PrimitiveValueDecoders.fromInt64, PrimitiveValueDecoders.fromText)) .decode(barAggregateValue); There is also a decode(Value, UnknownTrailingFieldPolicy) method that takes an additional UnknownTrailingFieldPolicy This method is used to handle unknown trailing fields in the value. Currently, the error is thrown if there are unknown trailing fields or extra fields are ignored. In the following situation if the following DAML data object is defined in the DAML project on the client side: data Bar = Bar \{ bar : Int, baz: Int } deriving (Eq, Show) And the following value is received from the ledger: Value(1, 2, Optional(3)) if the following code is executed on the client side, the IllegalArgumentException is thrown: Bar bar = Bar.valueDecoder().decode(value, UnknownTrailingFieldPolicy.STRICT); and if the following code is executed on the client side, the Bar object is created with bar = 1 and baz = 2, while the extra field 3 is ignored: Bar bar = Bar.valueDecoder().decode(value, UnknownTrailingFieldPolicy.IGNORE);</p>
  </div>

  <div class="x2mdx-ref-card">
    <div class="x2mdx-ref-card-head">
      <a class="x2mdx-ref-card-title" href="./variant">Variant</a>

      <div class="x2mdx-ref-badges">
        <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>

        <span class="x2mdx-ref-badge x2mdx-ref-badge--added">Added 3.4.8</span>
      </div>
    </div>

    <p class="x2mdx-ref-card-summary">Base class of all decoded-to-codegen Daml variants with no type parameters. Its encoded counterpart is Variant, which can be produced with toValue().</p>
  </div>
</div>

## History

<div class="x2mdx-ref-history" aria-label="Reference history">
  <div class="x2mdx-ref-history-event x2mdx-ref-history-event--introduced" id="history-added-3-5-1">
    <div class="x2mdx-ref-history-event-head">
      <span class="x2mdx-ref-history-event-label">Added</span>
      <code class="x2mdx-ref-history-event-version">3.5.1</code>
    </div>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.UnknownTrailingFieldPolicy</p>
  </div>

  <div class="x2mdx-ref-history-event x2mdx-ref-history-event--introduced" id="history-added-3-4-8">
    <div class="x2mdx-ref-history-event-head">
      <span class="x2mdx-ref-history-event-label">Added</span>
      <code class="x2mdx-ref-history-event-version">3.4.8</code>
    </div>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ByKey</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ByKey.ToInterface</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Choice</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Contract</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion.FromJson</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion.WithKey</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion.WithKey.NewContract</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion.WithoutKey</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractCompanion.WithoutKey.NewContract</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractDecoder</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractId</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractTypeCompanion</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractTypeCompanion.Package</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ContractWithKey</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.CreateAnd</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.CreateAnd.ToInterface</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Created</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.DamlEnum</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.DamlRecord</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.DefinedDataType</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Exercised</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Exercises</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Exercises.Archivable</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.HasCommands</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.InterfaceCompanion</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.InterfaceCompanion.FromJson</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.PrimitiveValueDecoders</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Update</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.ValueDecoder</p>

    <p class="x2mdx-ref-history-event-detail">com.daml.ledger.javaapi.data.codegen.Variant</p>
  </div>
</div>
