> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Type

> Type — Kinetica Node.js API

<div className="kinetica-typedoc">
  <div className="tsd-page-title" />

  <div className="section tsd-panel tsd-comment">
    <div className="tsd-comment tsd-typography">
      <p>Metadata about a GPUdb type.</p>
    </div>
  </div>

  <div className="aside tsd-sources">
    <ul>
      <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L163">src/utils.ts:163</a></li>
      <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L293">src/utils.ts:293</a></li>
    </ul>
  </div>

  <div className="section tsd-panel-group tsd-index-group">
    <div className="section tsd-panel tsd-index-panel">
      <div className="details tsd-index-content tsd-accordion" open="">
        <div className="summary tsd-accordion-summary tsd-index-summary">
          <h5 className="tsd-index-heading uppercase">Index</h5>
        </div>

        <div className="tsd-accordion-details">
          <div className="section tsd-index-section">
            <h3 className="tsd-index-heading tsd-anchor-link" id="constructors">Constructors</h3>
            <div className="tsd-index-list"><a href="#constructor" className="tsd-index-link"><span>constructor</span></a> </div>
          </div>

          <div className="section tsd-index-section">
            <h3 className="tsd-index-heading tsd-anchor-link" id="properties">Properties</h3>
            <div className="tsd-index-list"><a href="#columns" className="tsd-index-link"><span>columns</span></a> <a href="#label" className="tsd-index-link"><span>label</span></a> </div>
          </div>

          <div className="section tsd-index-section">
            <h3 className="tsd-index-heading tsd-anchor-link" id="methods">Methods</h3>
            <div className="tsd-index-list"><a href="#create" className="tsd-index-link"><span>create</span></a> <a href="#generateschema" className="tsd-index-link"><span>generateSchema</span></a> <a href="#fromtable" className="tsd-index-link"><span>fromTable</span></a> <a href="#fromtype" className="tsd-index-link"><span>fromType</span></a> <a href="#fromtypeinfo" className="tsd-index-link"><span>fromTypeInfo</span></a> </div>
          </div>
        </div>
      </div>
    </div>
  </div>

  <div className="details tsd-panel-group tsd-member-group tsd-accordion" open="">
    <div className="summary tsd-accordion-summary" data-key="section-Constructors">
      <h2 className="tsd-anchor-link" id="constructors-1">Constructors</h2>
    </div>

    <div className="section">
      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="constructor"><span>constructor</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="constructortype"><span className="tsd-signature-keyword">new</span> <span className="tsd-kind-constructor-signature">Type</span><span className="tsd-signature-symbol">(</span><span className="tsd-kind-parameter">label</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">,</span> <span className="tsd-signature-symbol">...</span><span className="tsd-kind-parameter">columns</span><span className="tsd-signature-symbol">:</span> <a href="/content/api/nodejs/classes/Column" className="tsd-signature-type tsd-kind-class">Column</a><span className="tsd-signature-symbol">\[]</span><span className="tsd-signature-symbol">)</span><span className="tsd-signature-symbol">:</span> <a href="" className="tsd-signature-type tsd-kind-class">Type</a></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Creates a Type object.</p>
              </div>

              <div className="tsd-parameters">
                <h4 className="tsd-parameters-title">Parameters</h4>

                <ul className="tsd-parameter-list">
                  <li>
                    <span><span className="tsd-kind-parameter">label</span>: <span className="tsd-signature-type">string</span></span>

                    <div className="tsd-comment tsd-typography">
                      <p>A user-defined description string</p>
                    </div>
                  </li>

                  <li>
                    <span><span className="tsd-signature-symbol">...</span><span className="tsd-kind-parameter">columns</span>: <a href="/content/api/nodejs/classes/Column" className="tsd-signature-type tsd-kind-class">Column</a><span className="tsd-signature-symbol">\[]</span></span>

                    <div className="tsd-comment tsd-typography">
                      <p>The columns that make up the type</p>
                    </div>
                  </li>
                </ul>
              </div>

              <h4 className="tsd-returns-title">Returns <a href="" className="tsd-signature-type tsd-kind-class">Type</a></h4>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L175">src/utils.ts:175</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>
    </div>
  </div>

  <div className="details tsd-panel-group tsd-member-group tsd-accordion" open="">
    <div className="summary tsd-accordion-summary" data-key="section-Properties">
      <h2 className="tsd-anchor-link" id="properties-1">Properties</h2>
    </div>

    <div className="section">
      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="columns"><code className="tsd-tag">Readonly</code><span>columns</span></h3>
        <div className="tsd-signature"><span className="tsd-kind-property">columns</span><span className="tsd-signature-symbol">:</span> <a href="/content/api/nodejs/classes/Column" className="tsd-signature-type tsd-kind-class">Column</a><span className="tsd-signature-symbol">\[]</span></div>

        <div className="tsd-comment tsd-typography">
          <p>The list of columns that the type comprises</p>
        </div>

        <div className="aside tsd-sources">
          <ul>
            <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L167">src/utils.ts:167</a></li>
          </ul>
        </div>
      </div>

      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="label"><code className="tsd-tag">Readonly</code><span>label</span></h3>
        <div className="tsd-signature"><span className="tsd-kind-property">label</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span></div>

        <div className="tsd-comment tsd-typography">
          <p>A user-defined description string</p>
        </div>

        <div className="aside tsd-sources">
          <ul>
            <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L165">src/utils.ts:165</a></li>
          </ul>
        </div>
      </div>
    </div>
  </div>

  <div className="details tsd-panel-group tsd-member-group tsd-accordion" open="">
    <div className="summary tsd-accordion-summary" data-key="section-Methods">
      <h2 className="tsd-anchor-link" id="methods-1">Methods</h2>
    </div>

    <div className="section">
      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="create"><span>create</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="create-1"><span className="tsd-kind-call-signature">create</span><span className="tsd-signature-symbol">(</span><span className="tsd-kind-parameter">gpudb</span><span className="tsd-signature-symbol">:</span> <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a><span className="tsd-signature-symbol">)</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">></span></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Creates a new type in GPUdb based on the metadata in the Type object.</p>
              </div>

              <div className="tsd-parameters">
                <h4 className="tsd-parameters-title">Parameters</h4>

                <ul className="tsd-parameter-list">
                  <li>
                    <span><span className="tsd-kind-parameter">gpudb</span>: <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a></span>

                    <div className="tsd-comment tsd-typography">
                      <p>GPUdb client instance</p>
                    </div>
                  </li>
                </ul>
              </div>

              <h4 className="tsd-returns-title">Returns <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">></span></h4>
              <p>Promise resolving to the type ID</p>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L223">src/utils.ts:223</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>

      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="generateschema"><span>generateSchema</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="generateschema-1"><span className="tsd-kind-call-signature">generateSchema</span><span className="tsd-signature-symbol">()</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-symbol">{"{"}</span><br /> <span className="tsd-kind-property">fields</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><br /> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span><span className="tsd-signature-symbol">\[]</span><span className="tsd-signature-symbol">;</span><br /> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span><br /> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span><br /><span className="tsd-signature-symbol">{"}"}</span></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Generates an Avro record schema based on the metadata in the Type object.</p>
              </div>

              <h4 className="tsd-returns-title">Returns <span className="tsd-signature-symbol">{"{"}</span><br /> <span className="tsd-kind-property">fields</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span><span className="tsd-signature-symbol">\[]</span><span className="tsd-signature-symbol">;</span><br /> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span><br /> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span><br /><span className="tsd-signature-symbol">{"}"}</span></h4>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L206">src/utils.ts:206</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>

      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="fromtable"><code className="tsd-tag">Static</code><span>fromTable</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="fromtable-1"><span className="tsd-kind-call-signature">fromTable</span><span className="tsd-signature-symbol">(</span><span className="tsd-kind-parameter">gpudb</span><span className="tsd-signature-symbol">:</span> <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a><span className="tsd-signature-symbol">,</span> <span className="tsd-kind-parameter">tableName</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">)</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><a href="" className="tsd-signature-type tsd-kind-class">Type</a><span className="tsd-signature-symbol">></span></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Creates a Type object containing metadata about the type stored in the specified table.</p>
              </div>

              <div className="tsd-parameters">
                <h4 className="tsd-parameters-title">Parameters</h4>

                <ul className="tsd-parameter-list">
                  <li>
                    <span><span className="tsd-kind-parameter">gpudb</span>: <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a></span>

                    <div className="tsd-comment tsd-typography">
                      <p>GPUdb client instance</p>
                    </div>
                  </li>

                  <li>
                    <span><span className="tsd-kind-parameter">tableName</span>: <span className="tsd-signature-type">string</span></span>

                    <div className="tsd-comment tsd-typography">
                      <p>The table from which to obtain type metadata</p>
                    </div>
                  </li>
                </ul>
              </div>

              <h4 className="tsd-returns-title">Returns <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><a href="" className="tsd-signature-type tsd-kind-class">Type</a><span className="tsd-signature-symbol">></span></h4>
              <p>Promise resolving to the Type object</p>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L247">src/utils.ts:247</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>

      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="fromtype"><code className="tsd-tag">Static</code><span>fromType</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="fromtype-1"><span className="tsd-kind-call-signature">fromType</span><span className="tsd-signature-symbol">(</span><span className="tsd-kind-parameter">gpudb</span><span className="tsd-signature-symbol">:</span> <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a><span className="tsd-signature-symbol">,</span> <span className="tsd-kind-parameter">typeId</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">)</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><a href="" className="tsd-signature-type tsd-kind-class">Type</a><span className="tsd-signature-symbol">></span></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Creates a Type object containing metadata about the specified type in GPUdb.</p>
              </div>

              <div className="tsd-parameters">
                <h4 className="tsd-parameters-title">Parameters</h4>

                <ul className="tsd-parameter-list">
                  <li>
                    <span><span className="tsd-kind-parameter">gpudb</span>: <a href="/content/api/nodejs/classes/GPUdb" className="tsd-signature-type tsd-kind-class">GPUdb</a></span>

                    <div className="tsd-comment tsd-typography">
                      <p>GPUdb client instance</p>
                    </div>
                  </li>

                  <li>
                    <span><span className="tsd-kind-parameter">typeId</span>: <span className="tsd-signature-type">string</span></span>

                    <div className="tsd-comment tsd-typography">
                      <p>The type for which to obtain metadata</p>
                    </div>
                  </li>
                </ul>
              </div>

              <h4 className="tsd-returns-title">Returns <span className="tsd-signature-type">Promise</span><span className="tsd-signature-symbol">\<</span><a href="" className="tsd-signature-type tsd-kind-class">Type</a><span className="tsd-signature-symbol">></span></h4>
              <p>Promise resolving to the Type object</p>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L277">src/utils.ts:277</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>

      <div className="section tsd-panel tsd-member">
        <h3 className="tsd-anchor-link" id="fromtypeinfo"><code className="tsd-tag">Static</code><span>fromTypeInfo</span></h3>

        <ul className="tsd-signatures">
          <li className="">
            <div className="tsd-signature tsd-anchor-link" id="fromtypeinfo-1"><span className="tsd-kind-call-signature">fromTypeInfo</span><span className="tsd-signature-symbol">(</span><br /> <span className="tsd-kind-parameter">label</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">,</span><br /> <span className="tsd-kind-parameter">typeSchema</span><span className="tsd-signature-symbol">:</span><br /> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-type">string</span><br /> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">fields</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><br /> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span><span className="tsd-signature-symbol">,</span><br /> <span className="tsd-kind-parameter">properties</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">Record</span><span className="tsd-signature-symbol">\<</span><span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">,</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span><span className="tsd-signature-symbol">></span><span className="tsd-signature-symbol">,</span><br /><span className="tsd-signature-symbol">)</span><span className="tsd-signature-symbol">:</span> <a href="" className="tsd-signature-type tsd-kind-class">Type</a></div>

            <div className="tsd-description">
              <div className="tsd-comment tsd-typography">
                <p>Creates a Type object using data returned from GPUdb show\_table or show\_types.</p>
              </div>

              <div className="tsd-parameters">
                <h4 className="tsd-parameters-title">Parameters</h4>

                <ul className="tsd-parameter-list">
                  <li><span><span className="tsd-kind-parameter">label</span>: <span className="tsd-signature-type">string</span></span></li>
                  <li><span><span className="tsd-kind-parameter">typeSchema</span>: <span className="tsd-signature-type">string</span> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">fields</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-symbol">{"{"}</span> <span className="tsd-kind-property">name</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">;</span> <span className="tsd-kind-property">type</span><span className="tsd-signature-symbol">:</span> <span className="tsd-signature-type">string</span> <span className="tsd-signature-symbol">|</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span><span className="tsd-signature-symbol">\[]</span> <span className="tsd-signature-symbol">{"}"}</span></span></li>
                  <li><span><span className="tsd-kind-parameter">properties</span>: <span className="tsd-signature-type">Record</span><span className="tsd-signature-symbol">\<</span><span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">,</span> <span className="tsd-signature-type">string</span><span className="tsd-signature-symbol">\[]</span><span className="tsd-signature-symbol">></span></span></li>
                </ul>
              </div>

              <h4 className="tsd-returns-title">Returns <a href="" className="tsd-signature-type tsd-kind-class">Type</a></h4>

              <div className="aside tsd-sources">
                <ul>
                  <li>Defined in <a href="https://github.com/kineticadb/kinetica-api-typescript/blob/master/src/utils.ts#L183">src/utils.ts:183</a></li>
                </ul>
              </div>
            </div>
          </li>
        </ul>
      </div>
    </div>
  </div>
</div>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.