@contentauth/c2pa-node


@contentauth/c2pa-node / BuilderInterface

Interface: BuilderInterface

Defined in: types.d.ts:192

Methods

addAction()

addAction(actionJson): void

Defined in: types.d.ts:222

Add a single action to the manifest. This is a convenience method for adding an action to the Actions assertion.

Parameters

actionJson

string

The JSON representation of the action

Returns

void


addAssertion()

addAssertion(label, assertion, assertionKind?): void

Defined in: types.d.ts:230

Add CBOR assertion to the builder

Parameters

label

string

The label of the assertion

assertion

unknown

The assertion, should be a string if the type is JSON, otherwise a JS Object

assertionKind?

ManifestAssertionKind

The type of assertion

Returns

void


addIngredient()

addIngredient(ingredientJson, ingredient?): Promise<void>

Defined in: types.d.ts:247

Add an ingredient to the manifest

Parameters

ingredientJson

string

The JSON representation of the ingredient

ingredient?

SourceAsset

Optional source asset (buffer or file) for the ingredient

Returns

Promise<void>


addIngredientFromReader()

addIngredientFromReader(reader): Ingredient

Defined in: types.d.ts:256

Add an ingredient to the manifest from a Reader

Parameters

reader

ReaderInterface

The Reader object of the ingredient

Returns

Ingredient


addResource()

addResource(uri, resource): Promise<void>

Defined in: types.d.ts:240

Add a resource from a buffer or file

Parameters

uri

string

The URI of the resource

resource

SourceAsset

The source and format of the resource

Returns

Promise<void>


getHandle()

getHandle(): unknown

Defined in: types.d.ts:335

Get the internal handle for use with Neon bindings

Returns

unknown


getManifestDefinition()

getManifestDefinition(): Manifest

Defined in: types.d.ts:324

Getter for the builder’s manifest definition

Returns

Manifest

The manifest definition


setIntent()

setIntent(intent): void

Defined in: types.d.ts:203

An intent lets the API know what kind of manifest to create. Intents are Create, Edit, or Update. This allows the API to check that you are doing the right thing. It can also do things for you, like add parent ingredients from the source asset and automatically add required c2pa.created or c2pa.opened actions. Create requires a DigitalSourceType. It is used for assets without a parent ingredient. Edit requires a parent ingredient and is used for most assets that are being edited. Update is a special case with many restrictions but is more compact than Edit.

Parameters

intent

BuilderIntent

The intent of the manifest

Returns

void


setNoEmbed()

setNoEmbed(noEmbed): void

Defined in: types.d.ts:209

Set the no embed flag of the manifest

Parameters

noEmbed

boolean

The no embed flag of the manifest

Returns

void


setRemoteUrl()

setRemoteUrl(url): void

Defined in: types.d.ts:215

Set the remote URL of the manifest

Parameters

url

string

The remote URL of the manifest

Returns

void


sign()

sign(signer, input, output): Buffer

Defined in: types.d.ts:271

Sign an asset from a buffer or file

Parameters

signer

LocalSignerInterface

The local signer to use

input

SourceAsset

output

DestinationAsset

Returns

Buffer

the bytes of the c2pa_manifest that was embedded


signAsync()

signAsync(callbackSigner, input, output): Promise<Buffer<ArrayBufferLike>>

Defined in: types.d.ts:301

Sign an asset from a buffer or file asynchronously, using a CallbackSigner

Parameters

callbackSigner

The CallbackSigner

CallbackSignerInterface IdentityAssertionSignerInterface
input

SourceAsset

output

DestinationAsset

Returns

Promise<Buffer<ArrayBufferLike>>

the bytes of the c2pa_manifest that was embedded


signConfigAsync()

signConfigAsync(callback, signerConfig, input, output): Promise<Buffer<ArrayBufferLike>>

Defined in: types.d.ts:286

Sign an asset from a buffer or file asynchronously, using a callback and not passing a private key

Parameters

callback

(data) => Promise<Buffer<ArrayBufferLike>>

The callback function to sign the asset

signerConfig

JsCallbackSignerConfig

The configuration for the signer

input

SourceAsset

output

DestinationAsset

Returns

Promise<Buffer<ArrayBufferLike>>

the bytes of the c2pa_manifest that was embedded


signFile()

signFile(signer, filePath, output): Buffer

Defined in: types.d.ts:314

Embed a signed manifest into a stream using the LocalSigner

Parameters

signer

LocalSignerInterface

The local signer to use

filePath

string

output

DestinationAsset

Returns

Buffer

the bytes of the c2pa_manifest that was embedded


toArchive()

toArchive(asset): Promise<void>

Defined in: types.d.ts:262

Convert the Builder into a archive formatted buffer or file

Parameters

asset

DestinationAsset

The file or buffer for the archive

Returns

Promise<void>


updateManifestProperty()

updateManifestProperty(property, value): void

Defined in: types.d.ts:330

Update a string property of the manifest

Parameters

property

string

value
string ClaimVersion

Returns

void

The manifest definition