UNPKG

@synanetics/types

Version:
173 lines 6.78 kB
import { DomainResource, Extension, Identifier, Reference } from 'fhir/r3.js'; import { InterweaveMessageEventType } from '../../common.js'; export interface DataConsumerEndpoint { /** * Unique id for the element within a resource (for internal references) * This may be any string value that does not contain spaces */ id?: string; /** * May be used to represent additional information * that is not part of the basic definition of the element. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. */ extension?: Extension; /** * May be used to represent additional information * that is not part of the basic definition of the element, * and that modifies the understanding of the element that contains it. * Usually modifier elements provide negation or qualification. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. * Applications processing a resource are required to check for modifier extensions. */ modifierExtension?: Extension; /** * What type of endpoint this is (subscription or messaging) */ type: 'sub' | 'msg'; /** * URL of endpoint */ address: string; /** * The message type as defined by messageheader.event.coding that this endpoint accepts. */ messageEventType?: InterweaveMessageEventType[]; /** * Certificate details */ certificateDN?: string; /** * Set of headers expected by endpoint */ header?: string[]; } /** * DataConsumer defines a consumer of data for the regional shared care record */ export interface DataConsumer extends DomainResource { /** * The resourceType, always DataConsumer */ readonly resourceType: 'DataConsumer'; /** * An identifier for this DataConsumer */ identifier?: Identifier[]; /** * A label assigned to the consumer for human identification and communication */ name: string; /** * A description of consumer for human identification and communication */ narrative?: string; /** * Whether the DataConsumer is actively connected to the System of Systems */ status: 'active' | 'inactive'; /** * The date that the consumer was registered */ registered: string; /** * The DNS domain for the consumer */ domainName?: string; /** * Organization that is the owner of the data consumer */ organization: Reference; /** * The minimum maturity expected from providers */ minimumProviderMaturity: number; iam: { /** * Unique id for the element within a resource (for internal references) * This may be any string value that does not contain spaces */ id?: string; /** * May be used to represent additional information * that is not part of the basic definition of the element. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. */ extension?: Extension; /** * May be used to represent additional information * that is not part of the basic definition of the element, * and that modifies the understanding of the element that contains it. * Usually modifier elements provide negation or qualification. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. * Applications processing a resource are required to check for modifier extensions. */ modifierExtension?: Extension; /** * Credentials for the consumer */ secretHash: string; /** * Public key to verify signed token */ certificate: string; }; endpoint?: DataConsumerEndpoint[]; consumer: { /** * Unique id for the element within a resource (for internal references) * This may be any string value that does not contain spaces */ id?: string; /** * May be used to represent additional information * that is not part of the basic definition of the element. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. */ extension?: Extension; /** * May be used to represent additional information * that is not part of the basic definition of the element, * and that modifies the understanding of the element that contains it. * Usually modifier elements provide negation or qualification. * In order to make the use of extensions safe and manageable, * there is a strict set of governance applied to the definition and use of extensions. * Though any implementer is allowed to define an extension, * there is a set of requirements that SHALL be met as part of the definition of the extension. * Applications processing a resource are required to check for modifier extensions. */ modifierExtension?: Extension; /** * URL of client */ address?: string; /** * Certificate details */ certificateDN?: string; /** * What IAM roles the consumer client may assert they have */ roles?: string[]; /** * What IAM reasons the consumer client may assert they have */ reasonsForAccess?: string[]; }; } //# sourceMappingURL=dataConsumer.d.ts.map