mirror of
https://github.com/dergigi/boris.git
synced 2025-12-28 12:04:31 +01:00
- Add project structure with TypeScript, React, and Vite - Implement nostr authentication using browser extension (NIP-07) - Add NIP-51 compliant bookmark fetching and display - Create minimal UI with login and bookmark components - Integrate applesauce-core and applesauce-react libraries - Add responsive styling with dark/light mode support - Include comprehensive README with setup instructions This is a minimal MVP for a nostr bookmark client that allows users to view their bookmarks according to NIP-51 specification.
30 lines
1.0 KiB
TypeScript
30 lines
1.0 KiB
TypeScript
import type { CurveLengths } from './curve.ts';
|
|
type Hex = string | Uint8Array;
|
|
export type CurveType = {
|
|
P: bigint;
|
|
type: 'x25519' | 'x448';
|
|
adjustScalarBytes: (bytes: Uint8Array) => Uint8Array;
|
|
powPminus2: (x: bigint) => bigint;
|
|
randomBytes?: (bytesLength?: number) => Uint8Array;
|
|
};
|
|
export type MontgomeryECDH = {
|
|
scalarMult: (scalar: Hex, u: Hex) => Uint8Array;
|
|
scalarMultBase: (scalar: Hex) => Uint8Array;
|
|
getSharedSecret: (secretKeyA: Hex, publicKeyB: Hex) => Uint8Array;
|
|
getPublicKey: (secretKey: Hex) => Uint8Array;
|
|
utils: {
|
|
randomSecretKey: () => Uint8Array;
|
|
/** @deprecated use `randomSecretKey` */
|
|
randomPrivateKey: () => Uint8Array;
|
|
};
|
|
GuBytes: Uint8Array;
|
|
lengths: CurveLengths;
|
|
keygen: (seed?: Uint8Array) => {
|
|
secretKey: Uint8Array;
|
|
publicKey: Uint8Array;
|
|
};
|
|
};
|
|
export type CurveFn = MontgomeryECDH;
|
|
export declare function montgomery(curveDef: CurveType): MontgomeryECDH;
|
|
export {};
|
|
//# sourceMappingURL=montgomery.d.ts.map
|