@refinio/one.models
    Preparing search index...

    A model that represents an affirmed role.

    Note: Depends on the reverse maps of the LeuteModel to be able to find the someone from the personId and objectEvents to listen for new instances/signatures.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    onFound: OEvent<() => void | Promise<void>> = ...
    onInitialised: OEvent<() => void | Promise<void>> = ...
    state: StateMachine<"Uninitialised" | "Initialised", "shutdown" | "init">
    roleName: string

    Methods

    • Parameters

      • personId: SHA256IdHash<Person>
      • OptionalissuerPersonId: SHA256IdHash<Person>

      Returns Promise<
          {
              certificate: UnversionedObjectResult;
              license: UnversionedObjectResult<License>;
              signature: UnversionedObjectResult<Signature>;
          },
      >

    • Parameters

      • rolePersonId: SHA256IdHash<Person>

      Returns Promise<SHA256IdHash<Person>[]>

    • ************* Abstracts **************

      Parameters

      • data: OneObjectTypes

      Returns Promise<undefined | SHA256IdHash<Person>>

    • Get the signature hash for a person

      Parameters

      • personId: SHA256IdHash<Person>

        The person id

      Returns Promise<undefined | SHA256Hash[]>

      The signature hash

    • Checks if the data is affirmed by the role person ids.

      Parameters

      • data: SHA256Hash | SHA256IdHash

        The data to check.

      • OptionalbyPersonId: SHA256IdHash<Person>

        The personId that should be trusting the data.

      Returns Promise<boolean>

      True if the data is affirmed, false otherwise.

    • Check if the person has a certificate

      Parameters

      • personId: SHA256IdHash<Person>

        The person id

      Returns Promise<boolean>

      True if the person has a certificate, false otherwise

    • Check if the person has multiple certificates

      Parameters

      • personId: SHA256IdHash<Person>

        The person id

      Returns Promise<boolean>

      True if the person has multiple certificates, false otherwise

    • Checks if the data is signed by the role person ids.

      Parameters

      • data: SHA256Hash

        The data to check.

      • OptionalbyPersonId: SHA256IdHash<Person>

        The personId that should be signing the data.

      Returns Promise<boolean>

      True if the data is signed, false otherwise.

    • Check if the person is an issuer

      Parameters

      • personId: SHA256IdHash<Person>

        The person id

      Returns Promise<boolean>

      True if the person is an issuer or no issuers are set, false otherwise

    • Checks if the person is a role person.

      Parameters

      • OptionalpersonId: SHA256IdHash<Person>

        The personId to check. Default is the current person.

      Returns Promise<boolean>

      True if the person is a role person, false otherwise.

    • Set the role person

      Parameters

      • personId: SHA256IdHash<Person>

        The person id

      • OptionalissuerPersonId: SHA256IdHash<Person>

        The issuer person id

      Returns Promise<void>

    • Share the issuers with the person ids

      Parameters

      • rolePersonId: SHA256IdHash<Person>

        The role person id

      • shareWithPersonIds: SHA256IdHash<Person>[]

        The person ids to share with

      Returns Promise<void>

    • Shares the role with the given person ids.

      Parameters

      • shareWithPersonIds: SHA256IdHash<Person>[]

        The person ids to share with.

      • options: { forcePropagate?: boolean; rolePersonId?: SHA256IdHash<Person> } = {}
        • OptionalforcePropagate?: boolean

          Whether to force the role person id from options.rolePersonId to propagate. Default is false.

        • OptionalrolePersonId?: SHA256IdHash<Person>

          The role person id. Default is the current person.

      Returns Promise<void>