import { Extension } from './Extension.js';
import { FhirPrimitive } from './FhirPrimitive.js';
import { ValueSet_Expansion_Contains } from './ValueSet_Expansion_Contains.js';
import { ValueSet_Expansion_Parameter } from './ValueSet_Expansion_Parameter.js';
import { ValueSet_Expansion_Property } from './ValueSet_Expansion_Property.js';
export interface ValueSet_Expansion {
    /**
     * @description Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
     * @short Unique id for inter-element referencing
     */
    id?: string;
    /**
     * @description May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
     * @comment There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
     * @short Additional content defined by implementations
     */
    extension?: Extension[];
    /**
     * @description 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 in which it is contained andor the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can 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.
  
  Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
     * @comment There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
     * @short Extensions that cannot be ignored even if unrecognized
     */
    modifierExtension?: Extension[];
    /**
     * @description An identifier that uniquely identifies this expansion of the valueset, based on a unique combination of the provided parameters, the system default parameters, and the underlying system code system versions etc. Systems may re-use the same identifier as long as those factors remain the same, and the expansion is the same, but are not required to do so. This is a business identifier.
     * @comment Typically, this uri is a UUID (e.g. urn:uuid:8230ff20-c97a-4167-a59d-dc2cb9df16dd).
     * @short Identifies the value set expansion (business identifier)
     */
    identifier?: FhirPrimitive<string>;
    /**
     * @description As per paging Search results, the next URLs are opaque to the client, have no dictated structure, and only the server understands them.
     * @comment Clients SHOULD use the next link, if present, to page through expansion results in preference to using the offset and count parameters. Due to the optional nature of the next link, its absence does not necessarily indicate that it is the last page of results. Instead, as the offset and count parameters SHALL be populated when paging, clients can reliably use the countoffset parameters to determine whether the whole expansion is returned.
     * @short Opaque urls for paging through expansion results
     */
    next?: FhirPrimitive<string>;
    /**
     * @description The time at which the expansion was produced by the expanding system.
     * @comment This SHOULD be a fully populated instant, but in some circumstances, value sets are expanded by hand, and the expansion is published without that precision.
     * @short Time ValueSet expansion happened
     */
    timestamp: FhirPrimitive<string>;
    /**
     * @description The total number of concepts in the expansion. If the number of concept nodes in this resource is less than the stated number, then the server can return more using the offset parameter.
     * @comment Paging only applies to flat expansions.
     * @short Total number of codes in the expansion
     */
    total?: FhirPrimitive<number>;
    /**
     * @description If paging is being used, the offset at which this resource starts.  I.e. this resource is a partial view into the expansion. If paging is not being used, this element SHALL NOT be present.
     * @comment Paging only applies to flat expansions. If a filter is applied, the count is the number of concepts that matched the filter, not the number of concepts in an unfiltered view of the expansion.
     * @short Offset at which this resource starts
     */
    offset?: FhirPrimitive<number>;
    /**
     * @backbone Nested BackboneElement: parameter [0..*]
     */
    parameter?: ValueSet_Expansion_Parameter[];
    /**
     * @backbone Nested BackboneElement: property [0..*]
     */
    property?: ValueSet_Expansion_Property[];
    /**
     * @backbone Nested BackboneElement: contains [0..*]
     */
    contains?: ValueSet_Expansion_Contains[];
}
//# sourceMappingURL=ValueSet_Expansion.d.ts.map