@renown/sdk 6.2.0-rc.8 → 6.2.1-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-key-storage-DSkDBAhU.d.ts +14 -0
- package/dist/browser-key-storage-DSkDBAhU.d.ts.map +1 -0
- package/dist/browser-key-storage-v4O-fjz0.js +68 -0
- package/dist/browser-key-storage-v4O-fjz0.js.map +1 -0
- package/dist/crypto.d.ts +3 -0
- package/dist/crypto.js +3 -0
- package/dist/index.d.ts +3 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -66
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +2 -1
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +2 -1
- package/dist/node.js.map +1 -1
- package/dist/renown-builder-DP0iFzK1.js +433 -0
- package/dist/renown-builder-DP0iFzK1.js.map +1 -0
- package/dist/{utils-B3YIAdhZ.d.ts → signer-DYKGoYHB.d.ts} +27 -205
- package/dist/signer-DYKGoYHB.d.ts.map +1 -0
- package/dist/{renown-builder-BOKKkqSp.js → signer-XkA-D7Qt.js} +2 -431
- package/dist/signer-XkA-D7Qt.js.map +1 -0
- package/dist/utils-D8C7f9Qs.d.ts +182 -0
- package/dist/utils-D8C7f9Qs.d.ts.map +1 -0
- package/package.json +8 -2
- package/dist/renown-builder-BOKKkqSp.js.map +0 -1
- package/dist/utils-B3YIAdhZ.d.ts.map +0 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Resolver } from "did-resolver";
|
|
2
1
|
import { Action, AppActionSigner, ISigner, ISigner as ISigner$1, Signature, SignatureVerificationHandler, User, UserActionSigner } from "@powerhousedao/shared/document-model";
|
|
3
2
|
|
|
4
3
|
//#region src/constants.d.ts
|
|
@@ -114,31 +113,6 @@ declare const CREDENTIAL_TYPES: {
|
|
|
114
113
|
}];
|
|
115
114
|
};
|
|
116
115
|
//#endregion
|
|
117
|
-
//#region src/crypto/types.d.ts
|
|
118
|
-
type JwkKeyPair = {
|
|
119
|
-
publicKey: JsonWebKey;
|
|
120
|
-
privateKey: JsonWebKey;
|
|
121
|
-
};
|
|
122
|
-
interface JsonWebKeyPairStorage {
|
|
123
|
-
loadKeyPair(): Promise<JwkKeyPair | undefined>;
|
|
124
|
-
saveKeyPair(keyPair: JwkKeyPair): Promise<void>;
|
|
125
|
-
removeKeyPair(): Promise<void>;
|
|
126
|
-
}
|
|
127
|
-
type DID = `did:${string}`;
|
|
128
|
-
interface IRenownCrypto {
|
|
129
|
-
did: DID;
|
|
130
|
-
publicKey: CryptoKey;
|
|
131
|
-
removeDid(): Promise<void>;
|
|
132
|
-
sign: (data: Uint8Array) => Promise<Uint8Array>;
|
|
133
|
-
verify: (data: Uint8Array, signature: Uint8Array) => Promise<boolean>;
|
|
134
|
-
issuer: Issuer;
|
|
135
|
-
getBearerToken: (address: string | undefined, options?: CreateBearerTokenOptions) => Promise<string>;
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* @deprecated Use IRenownCrypto instead
|
|
139
|
-
*/
|
|
140
|
-
interface IConnectCrypto extends IRenownCrypto {}
|
|
141
|
-
//#endregion
|
|
142
116
|
//#region src/event/types.d.ts
|
|
143
117
|
interface IEventEmitter<Events extends Record<string, unknown>> {
|
|
144
118
|
/**
|
|
@@ -436,6 +410,31 @@ interface CreateBearerTokenOptions {
|
|
|
436
410
|
aud?: string;
|
|
437
411
|
}
|
|
438
412
|
//#endregion
|
|
413
|
+
//#region src/crypto/types.d.ts
|
|
414
|
+
type JwkKeyPair = {
|
|
415
|
+
publicKey: JsonWebKey;
|
|
416
|
+
privateKey: JsonWebKey;
|
|
417
|
+
};
|
|
418
|
+
interface JsonWebKeyPairStorage {
|
|
419
|
+
loadKeyPair(): Promise<JwkKeyPair | undefined>;
|
|
420
|
+
saveKeyPair(keyPair: JwkKeyPair): Promise<void>;
|
|
421
|
+
removeKeyPair(): Promise<void>;
|
|
422
|
+
}
|
|
423
|
+
type DID = `did:${string}`;
|
|
424
|
+
interface IRenownCrypto {
|
|
425
|
+
did: DID;
|
|
426
|
+
publicKey: CryptoKey;
|
|
427
|
+
removeDid(): Promise<void>;
|
|
428
|
+
sign: (data: Uint8Array) => Promise<Uint8Array>;
|
|
429
|
+
verify: (data: Uint8Array, signature: Uint8Array) => Promise<boolean>;
|
|
430
|
+
issuer: Issuer;
|
|
431
|
+
getBearerToken: (address: string | undefined, options?: CreateBearerTokenOptions) => Promise<string>;
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* @deprecated Use IRenownCrypto instead
|
|
435
|
+
*/
|
|
436
|
+
interface IConnectCrypto extends IRenownCrypto {}
|
|
437
|
+
//#endregion
|
|
439
438
|
//#region src/crypto/renown-crypto.d.ts
|
|
440
439
|
declare class RenownCrypto implements IRenownCrypto {
|
|
441
440
|
#private;
|
|
@@ -548,182 +547,5 @@ declare function extractResultingHashFromSignature(signature: Signature): string
|
|
|
548
547
|
*/
|
|
549
548
|
declare function signatureHasResultingHash(signature: Signature): boolean;
|
|
550
549
|
//#endregion
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
declare class Renown implements IRenown {
|
|
554
|
-
#private;
|
|
555
|
-
constructor(store: RenownStorage, eventEmitter: RenownEventEmitter, crypto: IRenownCrypto, appName: string, baseUrl?: string, profileFetcher?: ProfileFetcher);
|
|
556
|
-
get baseUrl(): string;
|
|
557
|
-
get user(): InternalUser | undefined;
|
|
558
|
-
get status(): LoginStatus;
|
|
559
|
-
get signer(): ISigner$1;
|
|
560
|
-
get crypto(): IRenownCrypto;
|
|
561
|
-
get did(): `did:${string}`;
|
|
562
|
-
get profileFetcher(): ProfileFetcher | undefined;
|
|
563
|
-
login(userDid: string): Promise<User$1>;
|
|
564
|
-
logout(): Promise<void>;
|
|
565
|
-
on<K extends keyof RenownEvents>(event: K, listener: (data: RenownEvents[K]) => void): () => void;
|
|
566
|
-
verifyBearerToken(token: string): Promise<false | AuthVerifiedCredential>;
|
|
567
|
-
getBearerToken(options: CreateBearerTokenOptions): Promise<string>;
|
|
568
|
-
}
|
|
569
|
-
//#endregion
|
|
570
|
-
//#region src/credential.d.ts
|
|
571
|
-
type Hex = `0x${string}`;
|
|
572
|
-
type TypedDataDomain = {
|
|
573
|
-
name?: string;
|
|
574
|
-
version?: string;
|
|
575
|
-
chainId?: number;
|
|
576
|
-
verifyingContract?: Hex;
|
|
577
|
-
salt?: Hex;
|
|
578
|
-
};
|
|
579
|
-
type TypedDataParameter = {
|
|
580
|
-
name: string;
|
|
581
|
-
type: string;
|
|
582
|
-
};
|
|
583
|
-
/** EIP-712 domain as signed by the credential issuer. */
|
|
584
|
-
type CredentialDomain = {
|
|
585
|
-
version: string;
|
|
586
|
-
chainId: number;
|
|
587
|
-
};
|
|
588
|
-
/** The credential body that is EIP-712 signed (everything except `proof`). */
|
|
589
|
-
type CredentialMessage = {
|
|
590
|
-
"@context": string[];
|
|
591
|
-
type: string[];
|
|
592
|
-
id: string;
|
|
593
|
-
issuer: {
|
|
594
|
-
id: string;
|
|
595
|
-
ethereumAddress: Hex;
|
|
596
|
-
};
|
|
597
|
-
credentialSubject: {
|
|
598
|
-
id: string;
|
|
599
|
-
app: string;
|
|
600
|
-
};
|
|
601
|
-
credentialSchema: {
|
|
602
|
-
id: string;
|
|
603
|
-
type: string;
|
|
604
|
-
};
|
|
605
|
-
issuanceDate: string;
|
|
606
|
-
expirationDate: string;
|
|
607
|
-
};
|
|
608
|
-
/** Typed-data signer; matches the loose shape used by wallet adapters. */
|
|
609
|
-
type SignCredentialTypedData = (args: {
|
|
610
|
-
domain: TypedDataDomain;
|
|
611
|
-
types: Record<string, readonly TypedDataParameter[]>;
|
|
612
|
-
primaryType: string;
|
|
613
|
-
message: Record<string, unknown>;
|
|
614
|
-
}) => Promise<Hex>;
|
|
615
|
-
interface BuildCredentialParams {
|
|
616
|
-
signTypedData: SignCredentialTypedData;
|
|
617
|
-
address: Hex;
|
|
618
|
-
chainId: number;
|
|
619
|
-
app: string;
|
|
620
|
-
/** Credential subject id: the app/client DID the credential delegates to. */
|
|
621
|
-
appId: string;
|
|
622
|
-
expiresInDays?: number;
|
|
623
|
-
}
|
|
624
|
-
/** Assemble a Renown delegation VC and sign it with the provided signer. */
|
|
625
|
-
declare function buildAndSignCredential(params: BuildCredentialParams): Promise<PowerhouseVerifiableCredential>;
|
|
626
|
-
/** Recover the address that signed a credential's EIP-712 proof. */
|
|
627
|
-
declare function recoverCredentialSigner(credential: PowerhouseVerifiableCredential): Promise<Hex>;
|
|
628
|
-
/** True when the proof was signed by the credential's declared issuer address. */
|
|
629
|
-
declare function verifyCredentialSignature(credential: PowerhouseVerifiableCredential): Promise<boolean>;
|
|
630
|
-
//#endregion
|
|
631
|
-
//#region src/renown-builder.d.ts
|
|
632
|
-
interface RenownBuilderOptions {
|
|
633
|
-
appName: string;
|
|
634
|
-
storage?: RenownStorage;
|
|
635
|
-
eventEmitter?: RenownEventEmitter;
|
|
636
|
-
crypto?: IRenownCrypto;
|
|
637
|
-
keyPairStorage?: JsonWebKeyPairStorage;
|
|
638
|
-
baseUrl?: string;
|
|
639
|
-
profileFetcher?: ProfileFetcher;
|
|
640
|
-
}
|
|
641
|
-
/**
|
|
642
|
-
* Base builder for creating Renown instances.
|
|
643
|
-
* Use platform-specific builders (RenownBuilder from init.browser.js or init.node.js)
|
|
644
|
-
* for pre-configured defaults.
|
|
645
|
-
*/
|
|
646
|
-
declare class BaseRenownBuilder {
|
|
647
|
-
#private;
|
|
648
|
-
/**
|
|
649
|
-
* @param appName - Application name used for signing context
|
|
650
|
-
*/
|
|
651
|
-
constructor(appName: string);
|
|
652
|
-
/**
|
|
653
|
-
* Set custom storage for user data persistence.
|
|
654
|
-
* Defaults to in-memory storage if not set.
|
|
655
|
-
*/
|
|
656
|
-
withStorage(storage: RenownStorage): this;
|
|
657
|
-
/**
|
|
658
|
-
* Set custom event emitter for user state changes.
|
|
659
|
-
* Defaults to in-memory event emitter if not set.
|
|
660
|
-
*/
|
|
661
|
-
withEventEmitter(eventEmitter: RenownEventEmitter): this;
|
|
662
|
-
/**
|
|
663
|
-
* Set a pre-built crypto instance.
|
|
664
|
-
* Either crypto or keyPairStorage must be provided.
|
|
665
|
-
*/
|
|
666
|
-
withCrypto(crypto: IRenownCrypto): this;
|
|
667
|
-
/**
|
|
668
|
-
* Set key pair storage for cryptographic keys.
|
|
669
|
-
* A crypto instance will be built from this storage.
|
|
670
|
-
* Either crypto or keyPairStorage must be provided.
|
|
671
|
-
*/
|
|
672
|
-
withKeyPairStorage(keyPairStorage: JsonWebKeyPairStorage): this;
|
|
673
|
-
/**
|
|
674
|
-
* Set the Renown server URL for credential verification.
|
|
675
|
-
* Defaults to https://www.renown.id
|
|
676
|
-
*/
|
|
677
|
-
withBaseUrl(baseUrl: string): this;
|
|
678
|
-
/**
|
|
679
|
-
* Set a profile fetcher strategy for enriching user data after login.
|
|
680
|
-
* The fetcher receives the authenticated user and the base URL,
|
|
681
|
-
* and returns a RenownProfile. Called in the background after each login.
|
|
682
|
-
* Defaults to fetchRenownProfile which calls the Renown API.
|
|
683
|
-
*/
|
|
684
|
-
withProfileFetcher(profileFetcher: ProfileFetcher): this;
|
|
685
|
-
/**
|
|
686
|
-
* Build and initialize the Renown instance.
|
|
687
|
-
* If a user is stored, attempts to re-authenticate them.
|
|
688
|
-
* @throws Error if neither crypto nor keyPairStorage is provided
|
|
689
|
-
*/
|
|
690
|
-
build(): Promise<Renown>;
|
|
691
|
-
/**
|
|
692
|
-
* Create a BaseRenownBuilder from options object for a more concise API
|
|
693
|
-
*/
|
|
694
|
-
static from(options: RenownBuilderOptions): BaseRenownBuilder;
|
|
695
|
-
}
|
|
696
|
-
//#endregion
|
|
697
|
-
//#region src/profile.d.ts
|
|
698
|
-
declare const fetchRenownProfile: ProfileFetcher;
|
|
699
|
-
//#endregion
|
|
700
|
-
//#region src/utils.d.ts
|
|
701
|
-
type ILogger = {
|
|
702
|
-
level: "verbose" | "debug" | "info" | "warn" | "error";
|
|
703
|
-
verbose: (message: string, ...replacements: any[]) => void;
|
|
704
|
-
debug: (message: string, ...replacements: any[]) => void;
|
|
705
|
-
info: (message: string, ...replacements: any[]) => void;
|
|
706
|
-
warn: (message: string, ...replacements: any[]) => void;
|
|
707
|
-
error: (message: string, ...replacements: any[]) => void;
|
|
708
|
-
};
|
|
709
|
-
/**
|
|
710
|
-
* Parse a DID:pkh string to extract network, chain ID, and address information
|
|
711
|
-
* @param did - The DID string in format "did:pkh:networkId:chainId:address"
|
|
712
|
-
* @returns Parsed DID information
|
|
713
|
-
* @throws Error if the DID format is invalid
|
|
714
|
-
*/
|
|
715
|
-
declare function parsePkhDid(did: string): PKHDid;
|
|
716
|
-
interface VerifyAuthBearerTokenOptions {
|
|
717
|
-
/** Expected `aud` claim. Required when verifying tokens that include an
|
|
718
|
-
* audience claim — did-jwt rejects them otherwise with
|
|
719
|
-
* `invalid_config: JWT audience is required but your app address has not
|
|
720
|
-
* been configured`. Tokens minted without `aud` are unaffected. */
|
|
721
|
-
audience?: string;
|
|
722
|
-
}
|
|
723
|
-
declare function verifyAuthBearerToken(jwt: string, options?: VerifyAuthBearerTokenOptions): Promise<false | AuthVerifiedCredential>;
|
|
724
|
-
declare function assertIsAuthCredential(credential: VerifiedCredential): asserts credential is AuthVerifiedCredential;
|
|
725
|
-
declare function createAuthBearerToken(chainId: number, networkId: string, address: string, issuer: Issuer, options?: CreateBearerTokenOptions): Promise<string>;
|
|
726
|
-
declare const getResolver: () => Resolver;
|
|
727
|
-
//#endregion
|
|
728
|
-
export { LoginStatus as $, AuthVerifiedCredential as A, DEFAULT_RENOWN_NETWORK_ID as At, IPowerhouseCredentialSubject as B, parseSignatureHashField as C, IRenownCrypto as Ct, ConnectCrypto as D, CREDENTIAL_SUBJECT_TYPE as Dt, RenownCryptoBuilder as E, CREDENTIAL_SCHEMA_EIP712_TYPE as Et, DIDDocumentMetadata as F, IVerifiableCredential as G, IProof as H, DIDResolutionMetadata as I, JWTPayload as J, InternalUser as K, DIDResolutionResult as L, CreateBearerTokenOptions as M, DOMAIN_TYPE as Mt, CredentialStatus as N, ISSUER_TYPE as Nt, RenownCrypto as O, CREDENTIAL_TYPES as Ot, DIDDocument as P, VERIFIABLE_CREDENTIAL_EIP712_TYPE as Pt, KeyCapabilitySection as Q, EcdsaSignature as R, extractResultingHashFromSignature as S, IConnectCrypto as St, MemoryKeyStorage as T, JwkKeyPair as Tt, IRenown as U, IPowerhouseIssuerType as V, ISigner$1 as W, JWTVerifyPolicies as X, JWTVerified as Y, JsonWebKey$1 as Z, verifyCredentialSignature as _, VerifiedJWT as _t, getResolver as a, RenownEvents as at, RenownCryptoSigner as b, IEventEmitter as bt, fetchRenownProfile as c, RenownStorageMap as ct, BuildCredentialParams as d, Signer as dt, PKHDid as et, CredentialDomain as f, Unsubscribe as ft, recoverCredentialSigner as g, VerifiedCredential as gt, buildAndSignCredential as h, VerificationMethod as ht, createAuthBearerToken as i, RenownEventEmitter as it, ConditionWeightedThreshold as j, DEFAULT_RENOWN_URL as jt, AuthVerifiableCredential as k, DEFAULT_RENOWN_CHAIN_ID as kt, BaseRenownBuilder as l, Service as lt, SignCredentialTypedData as m, Verifiable as mt, VerifyAuthBearerTokenOptions as n, ProfileFetcher as nt, parsePkhDid as o, RenownProfile as ot, CredentialMessage as p, User$1 as pt, Issuer as q, assertIsAuthCredential as r, Proof as rt, verifyAuthBearerToken as s, RenownStorage as st, ILogger as t, PowerhouseVerifiableCredential as tt, RenownBuilderOptions as u, ServiceEndpoint as ut, Renown as v, W3CCredential as vt, signatureHasResultingHash as w, JsonWebKeyPairStorage as wt, createSignatureVerifier as x, DID as xt, RenownMemoryStorage as y, BaseStorage as yt, IAuthCredentialSubject as z };
|
|
729
|
-
//# sourceMappingURL=utils-B3YIAdhZ.d.ts.map
|
|
550
|
+
export { User$1 as $, ISigner$1 as A, PKHDid as B, DIDResolutionResult as C, IPowerhouseIssuerType as D, IPowerhouseCredentialSubject as E, JWTVerified as F, RenownEvents as G, ProfileFetcher as H, JWTVerifyPolicies as I, RenownStorageMap as J, RenownProfile as K, JsonWebKey$1 as L, InternalUser as M, Issuer as N, IProof as O, JWTPayload as P, Unsubscribe as Q, KeyCapabilitySection as R, DIDResolutionMetadata as S, IAuthCredentialSubject as T, Proof as U, PowerhouseVerifiableCredential as V, RenownEventEmitter as W, ServiceEndpoint as X, Service as Y, Signer as Z, ConditionWeightedThreshold as _, signatureHasResultingHash as a, BaseStorage as at, DIDDocument as b, ConnectCrypto as c, CREDENTIAL_SCHEMA_EIP712_TYPE as ct, IConnectCrypto as d, DEFAULT_RENOWN_CHAIN_ID as dt, Verifiable as et, IRenownCrypto as f, DEFAULT_RENOWN_NETWORK_ID as ft, AuthVerifiedCredential as g, VERIFIABLE_CREDENTIAL_EIP712_TYPE as gt, AuthVerifiableCredential as h, ISSUER_TYPE as ht, parseSignatureHashField as i, W3CCredential as it, IVerifiableCredential as j, IRenown as k, RenownCrypto as l, CREDENTIAL_SUBJECT_TYPE as lt, JwkKeyPair as m, DOMAIN_TYPE as mt, createSignatureVerifier as n, VerifiedCredential as nt, MemoryKeyStorage as o, MemoryStorage as ot, JsonWebKeyPairStorage as p, DEFAULT_RENOWN_URL as pt, RenownStorage as q, extractResultingHashFromSignature as r, VerifiedJWT as rt, RenownCryptoBuilder as s, IEventEmitter as st, RenownCryptoSigner as t, VerificationMethod as tt, DID as u, CREDENTIAL_TYPES as ut, CreateBearerTokenOptions as v, EcdsaSignature as w, DIDDocumentMetadata as x, CredentialStatus as y, LoginStatus as z };
|
|
551
|
+
//# sourceMappingURL=signer-DYKGoYHB.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer-DYKGoYHB.d.ts","names":[],"sources":["../src/constants.ts","../src/event/types.ts","../src/storage/common.ts","../src/types.ts","../src/crypto/types.ts","../src/crypto/renown-crypto.ts","../src/crypto/renown-crypto-builder.ts","../src/crypto/memory-key-storage.ts","../src/crypto/signer.ts"],"mappings":"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"}
|