# @getforma/core/compiled

Compiler-generated DOM construction support exposed through an optional runtime entry.

This entry supports compiler output. Application authors should use the compiler instead of calling its construction helpers directly. It is separate from core’s ordinary entry and does not enable routing.

Published declaration: [@getforma/core@3.2.0-rc.2](https://unpkg.com/@getforma/core@3.2.0-rc.2/dist/compiled.d.ts).

## Internal integration exports

### __createCompiledTemplate

Internal integration export; not an application-facing stability promise.

```ts
declare function __createCompiledTemplate(markup: () => TrustedHtml, bindings: readonly CompiledBinding[]): (initialize: Initialize) => HTMLElement;
```

Compiler-only HTML construction. The compiler supplies escaped, closed
markup and descriptors for every dynamic slot. The staged initializer
preserves expression evaluation interleaved with initial binding effects.
Its undefined-binder branch constructs the original JSX exactly once.
No DOM or Trusted Types policy is touched until the first CSR invocation.

Related declarations: [`CompiledBinding`](/docs/3.2/api-compiled/#type-CompiledBinding), [`Initialize`](/docs/3.2/api-compiled/#type-Initialize), [`TrustedHtml`](/docs/3.2/api-core/#symbol-TrustedHtml)

## Referenced declaration types

### CompiledBinding

Internal integration export; not an application-facing stability promise.

```ts
type CompiledBinding = readonly [
    path: readonly number[],
    kind: 0 | 1 | 2,
    key?: string
];
```



### Initialize

Referenced type; not separately importable from this entry point.

```ts
type Initialize = (bind?: (index: number, value: unknown) => void) => HTMLElement | void;
```



## Other entry points

[@getforma/core](/docs/3.2/api-core/) · [@getforma/core/runtime](/docs/3.2/api-runtime/) · [@getforma/core/runtime-hardened](/docs/3.2/api-runtime-hardened/) · [@getforma/core/runtime-csp](/docs/3.2/api-runtime-csp/) · [@getforma/core/tc39](/docs/3.2/api-tc39/) · [@getforma/core/http](/docs/3.2/api-http/) · [@getforma/core/storage](/docs/3.2/api-storage/) · [@getforma/core/navigation](/docs/3.2/api-navigation/) · [JSX namespace](/docs/3.2/api-jsx/)