import { Serializable } from "@js-soft/ts-serval"; import { CoreId } from "@nmshd/core-types"; import { CoreBuffer, CryptoCipher, CryptoRelationshipPublicRequest, CryptoRelationshipPublicResponse, CryptoSecretKey, CryptoSignature, CryptoSignaturePublicKey } from "@nmshd/crypto"; import { AccountController } from "../accounts/AccountController"; import { RelationshipTemplate } from "../relationshipTemplates/local/RelationshipTemplate"; import { RelationshipTemplatePublicKey } from "../relationshipTemplates/transmission/RelationshipTemplatePublicKey"; import { SecretContainerCipher } from "../secrets/data/SecretContainerCipher"; import { SecretController } from "../secrets/SecretController"; export declare class RelationshipSecretController extends SecretController { private readonly cache; constructor(parent: AccountController); private getSecret; createRequestorSecrets(template: RelationshipTemplate, relationshipSecretId: CoreId): Promise; createTemplatorSecrets(relationshipSecretId: CoreId, template: RelationshipTemplate, publicRequestCrypto: CryptoRelationshipPublicRequest): Promise; getPublicCreationResponseContentCrypto(relationshipSecretId: CoreId): Promise; convertSecrets(relationshipSecretId: CoreId, response: CryptoRelationshipPublicResponse): Promise; deleteSecretForRelationship(relationshipSecretId: CoreId): Promise; decryptTemplate(cipher: CryptoCipher, secretKey: CryptoSecretKey): Promise; verifyTemplate(buffer: CoreBuffer, signature: CryptoSignature, templatorDeviceKey: CryptoSignaturePublicKey): Promise; encryptCreationContent(relationshipSecretId: CoreId, content: Serializable | string | CoreBuffer): Promise; encrypt(relationshipSecretId: CoreId, content: Serializable | string): Promise; decryptCreationContent(relationshipSecretId: CoreId, cipher: CryptoCipher): Promise; createTemplateKey(): Promise; decryptPeer(relationshipSecretId: CoreId, cipher: CryptoCipher, omitCounterCheck?: boolean): Promise; hasCryptoRelationshipSecrets(relationshipSecretId: CoreId): Promise; decryptOwn(relationshipSecretId: CoreId, cipher: CryptoCipher): Promise; sign(relationshipSecretId: CoreId, content: Serializable | string | CoreBuffer): Promise; verifyOwn(relationshipSecretId: CoreId, content: Serializable | string | CoreBuffer, signature: CryptoSignature): Promise; verifyPeer(relationshipSecretId: CoreId, content: Serializable | string | CoreBuffer, signature: CryptoSignature): Promise; } //# sourceMappingURL=RelationshipSecretController.d.ts.map