Skip to content

Latest commit

 

History

History
38 lines (31 loc) · 7.4 KB

File metadata and controls

38 lines (31 loc) · 7.4 KB

//document-manager/eu.europa.ec.eudi.wallet.document

Package-level declarations

Types

Name Summary
CreateDocumentSettings [release]
interface CreateDocumentSettings
Interface that defines the required creationSettings when creating a document with DocumentManager.createDocument. Implementors of DocumentManager may introduce custom requirements for creating a document.
CreateDocumentSettingsImpl [release]
data class CreateDocumentSettingsImpl(val secureAreaIdentifier: String, val createKeySettings: CreateKeySettings, val numberOfCredentials: Int = 1, val credentialPolicy: CreateDocumentSettings.CredentialPolicy = CredentialPolicy.RotateUse) : CreateDocumentSettings
Implementation of CreateDocumentSettings interface that provides configuration for document creation.
DeferredDocument [release]
class DeferredDocument(baseDocument: Document, val relatedData: ByteArray) : UnsignedDocument
Represents a Deferred Document in the EUDI Wallet.
DocType [release]
typealias DocType = String
Document [release]
sealed interface Document
Base interface for all document types in the EUDI Wallet ecosystem.
DocumentId [release]
typealias DocumentId = String
DocumentManager [release]
interface DocumentManager
The DocumentManager interface is the main entry point to interact with documents in the EUDI Wallet. It is a high-level abstraction that provides a simplified API to manage digital documents like credentials, certificates, and other identity documents.
DocumentManagerImpl [release]
class DocumentManagerImpl(val identifier: String, val storage: Storage, val secureAreaRepository: SecureAreaRepository, val ktorHttpClientFactory: () -> HttpClient? = null) : DocumentManager
Default implementation of the DocumentManager interface for the EUDI Wallet.
ElementIdentifier [release]
typealias ElementIdentifier = String
IssuedDocument [release]
class IssuedDocument(baseDocument: Document) : Document
Represents an Issued Document in the EUDI Wallet.
NameSpace [release]
typealias NameSpace = String
NameSpacedValues [release]
typealias NameSpacedValues<T> = Map<NameSpace, Map<ElementIdentifier, T>>
NameSpaces [release]
typealias NameSpaces = Map<NameSpace, List<ElementIdentifier>>
Outcome [release]
class Outcome<out T>
Outcome for encapsulating success or failure of a computation for document manager operations. Wraps a Result instance to provide Java interop.
ProofOfDeletion [release]
typealias ProofOfDeletion = ByteArray
SharedSecret [release]
typealias SharedSecret = ByteArray
UnsignedDocument [release]
open class UnsignedDocument(baseDocument: Document) : Document
Represents a document that has been created but not yet fully issued.
Vct [release]
typealias Vct = String

Properties

Name Summary
nameSpacedDataJSONObject [release]
@get:JvmName(name = "nameSpacedDataAsJSONObject")
val IssuedDocument.nameSpacedDataJSONObject: JSONObject
Extension function to convert IssuedDocument's nameSpacedData to JSONObject Applicable only when IssuedDocument.data returns MsoMdocData

Functions

Name Summary
getDocuments [release]
inline fun <T : Document> DocumentManager.getDocuments(): List<T>
DocumentManager Extension function that returns a list of documents of type T. If T is IssuedDocument, then only IssuedDocument will be returned. If T is UnsignedDocument, then only UnsignedDocument will be returned, excluding DeferredDocument. If T is DeferredDocument, then only DeferredDocument will be returned.