> Development branch documentation · commit 327c05c78d2f528e4f4a679fcc7a77d9aa161f48
> Package versions: @zenfg/webgpu 0.1.0, @zenfg/snapshot 0.1.0, @zenfg/inspector 0.1.0, zenfg 0.1.0, zenfg-snapshot 0.1.0
> Source: https://github.com/uinosoft/zenfg/blob/327c05c78d2f528e4f4a679fcc7a77d9aa161f48/packages/snapshot/src/codec.ts#L66

[ZenFG TypeScript API](/zenfg/docs/api/index.md) / [snapshot](/zenfg/docs/api/snapshot/index.md) / [root](/zenfg/docs/api/snapshot/root/index.md) / finalizeFrameGraphSnapshot

# Function: finalizeFrameGraphSnapshot()

> **finalizeFrameGraphSnapshot**(`draft`): [`FrameGraphSnapshotV1`](/zenfg/docs/api/snapshot/root/type-aliases/FrameGraphSnapshotV1.md)

Defined in: [packages/snapshot/src/codec.ts:66](https://github.com/uinosoft/zenfg/blob/327c05c78d2f528e4f4a679fcc7a77d9aa161f48/packages/snapshot/src/codec.ts#L66)

Finalizes a producer-owned Snapshot draft into a canonical Snapshot 1.2 value.

## Parameters

### draft

`unknown`

## Returns

[`FrameGraphSnapshotV1`](/zenfg/docs/api/snapshot/root/type-aliases/FrameGraphSnapshotV1.md)

## Remarks

Object properties whose value is `undefined` are omitted to support
producer drafts assembled from optional fields. The result is detached from
the draft and has passed JSON-safety and semantic validation. All JSON
objects in the result have null prototypes; arrays remain ordinary arrays.
Use `Object.hasOwn(object, key)` to test for own fields.

## Throws

[FrameGraphSnapshotValidationError](/zenfg/docs/api/snapshot/root/classes/FrameGraphSnapshotValidationError.md) when the draft cannot be
finalized as a valid Snapshot 1.2 document.
