UNPKG

@itwin/property-validation-client

Version:
109 lines 4.02 kB
/** Property Validation API endpoint options. */ export interface ApiOptions { /** Property Validation API base url. Default value is `https://api.bentley.com/validation`. */ baseUrl?: string; /** Validation API version. Default value is `itwin-platform.v1`. */ version?: string; } export declare type AccessTokenCallback = () => Promise<string>; /** Authorization data parameter. This interface is extended by all other specific operation parameter interfaces. */ export interface AuthorizationParam { /** Authorization token. eg: 'Bearer ey...'*/ accessToken?: string; } /** Common url parameters that are supported for all entity list requests. */ export interface CollectionRequestParams { /** * Specifies how many entities should be returned in an entity page. The value must not exceed 1000. * If not specified 100 entities per page will be returned. */ $top?: number; } /** Link to some other entity or entity list that is related to the main entity in the API response. */ export interface Link { /** Url to access the related entity. */ href: string; } /** * Links that are included in all entity list page responses. They simplify pagination implementation because users * can send requests using these urls that already include pagination url parameters without having to * manually keep track of queried entity count. */ export interface CollectionLinks { /** Link to the current page. */ self: Link; /** Link to the next page. If `null` it means that the next page is empty. */ next: Link | null; } /** Common properties of all entity list page responses. */ export interface CollectionResponse { /** Common entity list page response links. See {@link CollectionLinks}. */ _links: CollectionLinks; } /** * Values for return preference used in `Prefer` header. The header value is formed by joining * `return=` and the enum value. */ export declare enum PreferReturn { /** Instructs the server to return minimal entity representation. */ Minimal = "minimal", /** Instructs the server to return full entity representation. */ Representation = "representation" } export interface AllUserMetadata { createdBy: UserMetadata; modifiedBy: UserMetadata; } export interface UserMetadata { email: string; name: string; } /** Function parameters - vary depending on the selected rule template */ export interface FunctionParametersBase { /** Property name. */ propertyName?: string; /** Regex pattern. */ pattern?: string; /** Upper bound of property value. */ upperBound?: string; /** Lower bound of property value. */ lowerBound?: string; } export interface FunctionParameters extends FunctionParametersBase { /** Nested template id (multi-property validation). */ templateId?: string; /** Nested parameters (multi-property validation). */ functionParameters?: FunctionParametersBase; /** Array of schemas/entities/properties to process (multi-property validation). */ schemas?: SchemaList[]; } /** List of schemas containing properties to process (multi-property validation). */ export interface SchemaList { /** Schema name. */ name: string; /** Schema label. */ label?: string; /** List of entities in schema. */ entities: ClassList; } /** List of classes containing properties to process (multi-property validation). */ export interface ClassList { /** Class name. */ name: string; /** Class label. */ label?: string; /** List of Class properties. */ properties?: PropertyList; /** List of aspect properties of the Class. */ aspects?: PropertyList; /** List of type definition properties of the Class. */ typeDefinitions?: PropertyList; } /** List of properties to process (multi-property validation). */ export interface PropertyList { /** Property name. */ name: string; /** Property label. */ label?: string; } //# sourceMappingURL=CommonInterfaces.d.ts.map