diff --git a/packages/crypto/src/index.ts b/packages/crypto/src/index.ts index 9f33776f..4253986f 100644 --- a/packages/crypto/src/index.ts +++ b/packages/crypto/src/index.ts @@ -132,13 +132,13 @@ export const generateKeyPair = ( throw new Error("Unsupported algorithm"); }; -export const canonicalJson = (value: any): string => { - return JSON.stringify(value, (_key, val) => +export const canonicalJson = (value: unknown): string => { + return JSON.stringify(value, (_key, val: unknown) => typeof val === "object" && val !== null && !Array.isArray(val) - ? Object.keys(val) + ? Object.keys(val as Record) .sort() - .reduce((sorted, key) => { - sorted[key] = val[key]; + .reduce>((sorted, key) => { + sorted[key] = (val as Record)[key]; return sorted; }, {}) : val, @@ -146,9 +146,9 @@ export const canonicalJson = (value: any): string => { }; interface JsonObject { - [key: string]: any; + [key: string]: unknown; signatures?: Record>; - unsigned?: any; + unsigned?: unknown; } export const signJson = (jsonObj: JsonObject, signingKey: string, signingName: string, keyId: string): JsonObject => {