Trust Generators Examples
These snippets show how to create JWT credential payloads and inspect generator metadata in a typical DID-based flow.
JwtVerifiableCredentialGenerator
import { ComponentFactory } from '@twin.org/core';
import type { IIdentityComponent } from '@twin.org/identity-models';
import { JwtVerifiableCredentialGenerator } from '@twin.org/trust-generators';
const identityComponent: IIdentityComponent = {
verifiableCredentialCreate: async () => ({
jwt: 'eyJhbGciOiJFZERTQSJ9.eyJpc3MiOiJkaWQ6ZXhhbXBsZTppc3N1ZXIifQ.signature'
})
} as IIdentityComponent;
ComponentFactory.register('identity', () => identityComponent);
const generator = new JwtVerifiableCredentialGenerator({
identityComponentType: 'identity',
config: {
verificationMethodId: 'did:example:issuer#key-1',
tokenTtlInSeconds: 900
}
});
console.log(generator.className()); // JwtVerifiableCredentialGenerator
const jwt = await generator.generate('did:example:issuer', {
subject: {
id: 'did:example:subject',
role: 'supplier'
}
});
console.log(typeof jwt); // string