@medic/cht-datasource
    Preparing search index...

    Interface Datasource

    The CHT datasource API. Provides access to the CHT data model through versioned sub-APIs (e.g. v1.person, v1.place). Get an instance via getDatasource.

    interface Datasource {
        v1: {
            contact: Contact.v1.Datasource;
            hasAnyPermission: (
                permissionsGroupList: string[][],
                userRoles: string[],
                chtPermissionsSettings?: Record<string, string[]>,
            ) => boolean;
            hasPermissions: (
                permissions: string | string[],
                userRoles: string[],
                chtPermissionsSettings?: Record<string, string[]>,
            ) => boolean;
            person: Person.v1.Datasource;
            place: Place.v1.Datasource;
            report: Report.v1.Datasource;
            target: Target.v1.Datasource;
        };
    }
    Index

    Properties

    Properties

    v1: {
        contact: Contact.v1.Datasource;
        hasAnyPermission: (
            permissionsGroupList: string[][],
            userRoles: string[],
            chtPermissionsSettings?: Record<string, string[]>,
        ) => boolean;
        hasPermissions: (
            permissions: string | string[],
            userRoles: string[],
            chtPermissionsSettings?: Record<string, string[]>,
        ) => boolean;
        person: Person.v1.Datasource;
        place: Place.v1.Datasource;
        report: Report.v1.Datasource;
        target: Target.v1.Datasource;
    }

    Type Declaration

    • contact: Contact.v1.Datasource

      Operations for working with contacts.

    • hasAnyPermission: (
          permissionsGroupList: string[][],
          userRoles: string[],
          chtPermissionsSettings?: Record<string, string[]>,
      ) => boolean

      Verify if the user's role has all the permissions of any of the provided groups.

    • hasPermissions: (
          permissions: string | string[],
          userRoles: string[],
          chtPermissionsSettings?: Record<string, string[]>,
      ) => boolean

      Verify if the user's role has the permission(s).

    • person: Person.v1.Datasource

      Operations for working with people.

    • place: Place.v1.Datasource

      Operations for working with places.

    • report: Report.v1.Datasource

      Operations for working with reports.

    • target: Target.v1.Datasource

      Operations for working with targets.