Nip07Interface: {
    getPublicKey: (() => Promise<string> | string);
    getRelays?: (() => Record<string, {
        read: boolean;
        write: boolean;
    }> | string[]);
    nip04?: {
        decrypt: ((pubkey: string, ciphertext: string) => Promise<string> | string);
        encrypt: ((pubkey: string, plaintext: string) => Promise<string> | string);
    };
    nip44?: {
        decrypt: ((pubkey: string, ciphertext: string) => Promise<string> | string);
        encrypt: ((pubkey: string, plaintext: string) => Promise<string> | string);
    };
    signEvent: ((template: EventTemplate) => Promise<VerifiedEvent> | VerifiedEvent);
}