# Class T8EntityType<TUnit>

Represents an entity type (class definition) in the T8 Client Model. Entity types define templates or classes that products can be instances of.

#### Example

    const model = readT8ClientModel(buffer);
    const wallType = model.entityTypes.find(t => t.type === 'IfcWallType');
    console.log(`Wall Type: ${wallType.name}`);
    console.log(`Properties:`, wallType.propertySets);

#### Type Parameters

- TUnit = T8Unit

  The unit type (default: T8Unit)

##### Index

### Constructors

constructor

### Properties

className
data
description?
globalId
localId
name?
propertySets
quantities
tag?

### Accessors

quantitySets

### Methods

create

## Constructors

### constructor

- new T8EntityType<TUnit = T8Unit>(
  localId: number,
  globalId: string,
  className: string,
  data: Record<string, boolean | number | string>,
  propertySets: Record<string, T8PropertySet<TUnit>>,
  quantities: Record<string, T8QuantitySet<TUnit>>,
  name?: string,
  description?: string,
  tag?: string,
  ): T8EntityType<TUnit>

  #### Type Parameters

  - TUnit = T8Unit

  #### Parameters

  - localId: number

    Local numerical identifier within the model

  - globalId: string

    Global unique identifier (GUID)

  - className: string

    Class name (e.g., 'IfcWallType', 'IfcDoorType')

  - data: Record<string, boolean | number | string>

    Custom data values attached to this entity type

  - propertySets: Record<string, T8PropertySet<TUnit>>

    Property sets that define this entity type

  - quantities: Record<string, T8QuantitySet<TUnit>>

    Quantity sets that define this entity type

  - `Optional` name: string

    Optional name of the entity type

  - `Optional` description: string

    Optional description of the entity type

  - `Optional` tag: string

    Optional tag identifier

  #### Returns T8EntityType<TUnit>

## Properties

### className

className: string

Class name (e.g., 'IfcWallType', 'IfcDoorType')

### data

data: Record<string, boolean | number | string>

Custom data values attached to this entity type

### `Optional` description

description?: string

Optional description of the entity type

### globalId

globalId: string

Global unique identifier (GUID)

### localId

localId: number

Local numerical identifier within the model

### `Optional` name

name?: string

Optional name of the entity type

### propertySets

propertySets: Record<string, T8PropertySet<TUnit>>

Property sets that define this entity type

### quantities

quantities: Record<string, T8QuantitySet<TUnit>>

Quantity sets that define this entity type

### `Optional` tag

tag?: string

Optional tag identifier

## Accessors

### quantitySets

- get quantitySets(): Record<string, T8QuantitySet<TUnit>>

  #### Returns Record<string, T8QuantitySet<TUnit>>

## Methods

### `Static` create

- create<TUnit>(dto: T8ClientEntityTypeDTO<TUnit>): T8EntityType<TUnit>

  #### Type Parameters

  - TUnit

  #### Parameters

  - dto: T8ClientEntityTypeDTO<TUnit>

  #### Returns T8EntityType<TUnit>