import type { PublicSignKey } from "./key.js"; import type { PreHash } from "./prehash.js"; import type { SignatureWithKey } from "./signature.js"; export interface Signer { sign: ( bytes: Uint8Array, prehash?: PreHash, ) => Promise | SignatureWithKey; } export type SignWithKey = ( bytes: Uint8Array, ) => Promise | SignatureWithKey; export type Identity = Signer & { publicKey: T; };