# PieceCIDTransform

Defined in: [packages/synapse-core/src/piece/calculate.ts:93](https://github.com/FilOzone/synapse-sdk/blob/ea2a88fe8ec7ca9b723171e8959c45ac98b52ac1/packages/synapse-core/src/piece/calculate.ts#L93)

A pass-through [TransformStream](https://developer.mozilla.org/docs/Web/API/TransformStream) that computes the PieceCID of the
data flowing through it. The [PieceCIDTransform.result](/reference/filoz/synapse-core/piece/interfaces/piececidtransform/#result) promise
resolves once the input stream closes.

## Example

```ts
const { transform, result } = Piece.transformStream()
await source.pipeThrough(transform).pipeTo(uploadSink)
const piece = await result
```

## Properties

### result

> `readonly` **result**: [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`PieceCID`](/reference/filoz/synapse-core/piece/classes/piececid/)\>

Defined in: [packages/synapse-core/src/piece/calculate.ts:95](https://github.com/FilOzone/synapse-sdk/blob/ea2a88fe8ec7ca9b723171e8959c45ac98b52ac1/packages/synapse-core/src/piece/calculate.ts#L95)

***

### transform

> `readonly` **transform**: [`TransformStream`](https://developer.mozilla.org/docs/Web/API/TransformStream)\<[`Uint8Array`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array)\<`ArrayBufferLike`\>, [`Uint8Array`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array)\<`ArrayBufferLike`\>\>

Defined in: [packages/synapse-core/src/piece/calculate.ts:94](https://github.com/FilOzone/synapse-sdk/blob/ea2a88fe8ec7ca9b723171e8959c45ac98b52ac1/packages/synapse-core/src/piece/calculate.ts#L94)