UNPKG

@loopback/docs

Version:
905 lines (904 loc) 30.6 kB
{ "metadata": { "toolPackage": "@microsoft/api-extractor", "toolVersion": "7.6.2", "schemaVersion": 1003, "oldestForwardsCompatibleVersion": 1001 }, "kind": "Package", "canonicalReference": "@loopback/repository-json-schema!", "docComment": "", "name": "@loopback/repository-json-schema", "members": [ { "kind": "EntryPoint", "canonicalReference": "@loopback/repository-json-schema!", "name": "", "members": [ { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getFieldsJsonSchemaFor:function(1)", "docComment": "/**\n * Build a JSON schema describing the format of the \"fields\" object used to include or exclude properties of model instances.\n *\n * @param modelCtor - The model constructor to build the filter schema for.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getFieldsJsonSchemaFor(modelCtor: " }, { "kind": "Content", "text": "typeof " }, { "kind": "Reference", "text": "Model", "canonicalReference": "@loopback/repository!Model:class" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JsonSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 4, "endIndex": 5 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "modelCtor", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 3 } } ], "name": "getFieldsJsonSchemaFor" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getFilterJsonSchemaFor:function(1)", "docComment": "/**\n * Build a JSON schema describing the format of the \"filter\" object used to query model instances.\n *\n * Note we don't take the model properties into account yet and return a generic json schema allowing any \"where\" condition.\n *\n * @param modelCtor - The model constructor to build the filter schema for.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getFilterJsonSchemaFor(modelCtor: " }, { "kind": "Content", "text": "typeof " }, { "kind": "Reference", "text": "Model", "canonicalReference": "@loopback/repository!Model:class" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JsonSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 4, "endIndex": 5 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "modelCtor", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 3 } } ], "name": "getFilterJsonSchemaFor" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getJsonSchema:function(1)", "docComment": "/**\n * Gets the JSON Schema of a TypeScript model/class by seeing if one exists in a cache. If not, one is generated and then cached.\n *\n * @param ctor - Contructor of class to get JSON Schema from\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getJsonSchema<T extends " }, { "kind": "Content", "text": "object" }, { "kind": "Content", "text": ">(ctor: " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": " & {\n prototype: T;\n}" }, { "kind": "Content", "text": ", options?: " }, { "kind": "Reference", "text": "JsonSchemaOptions", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions:interface" }, { "kind": "Content", "text": "<T>" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 9, "endIndex": 10 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "ctor", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 5 } }, { "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 6, "endIndex": 8 } } ], "typeParameters": [ { "typeParameterName": "T", "constraintTokenRange": { "startIndex": 1, "endIndex": 2 }, "defaultTypeTokenRange": { "startIndex": 0, "endIndex": 0 } } ], "name": "getJsonSchema" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getJsonSchemaRef:function(1)", "docComment": "/**\n * Describe the provided Model as a reference to a definition shared by multiple endpoints. The definition is included in the returned schema.\n *\n * @param modelCtor - The model constructor (e.g. `Product`)\n *\n * @param options - Additional options\n *\n * @example\n * ```ts\n * const schema = {\n * $ref: '/definitions/Product',\n * definitions: {\n * Product: {\n * title: 'Product',\n * properties: {\n * // etc.\n * }\n * }\n * }\n * }\n * ```\n *\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getJsonSchemaRef<T extends " }, { "kind": "Content", "text": "object" }, { "kind": "Content", "text": ">(modelCtor: " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": " & {\n prototype: T;\n}" }, { "kind": "Content", "text": ", options?: " }, { "kind": "Reference", "text": "JsonSchemaOptions", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions:interface" }, { "kind": "Content", "text": "<T>" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 9, "endIndex": 10 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "modelCtor", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 5 } }, { "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 6, "endIndex": 8 } } ], "typeParameters": [ { "typeParameterName": "T", "constraintTokenRange": { "startIndex": 1, "endIndex": 2 }, "defaultTypeTokenRange": { "startIndex": 0, "endIndex": 0 } } ], "name": "getJsonSchemaRef" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getNavigationalPropertyForRelation:function(1)", "docComment": "/**\n * Checks and return navigational property definition for the relation\n *\n * @param - relMeta Relation metadata object\n *\n * @param - targetRef Schema definition for the target model\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getNavigationalPropertyForRelation(relMeta: " }, { "kind": "Reference", "text": "RelationMetadata", "canonicalReference": "@loopback/repository!RelationMetadata:type" }, { "kind": "Content", "text": ", targetRef: " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 5, "endIndex": 6 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "relMeta", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "parameterName": "targetRef", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 } } ], "name": "getNavigationalPropertyForRelation" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!getWhereJsonSchemaFor:function(1)", "docComment": "/**\n * Build a JSON schema describing the format of the \"where\" object used to filter model instances to query, update or delete.\n *\n * Note we don't take the model properties into account yet and return a generic json schema allowing any \"where\" condition.\n *\n * @param modelCtor - The model constructor to build the filter schema for.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function getWhereJsonSchemaFor(modelCtor: " }, { "kind": "Content", "text": "typeof " }, { "kind": "Reference", "text": "Model", "canonicalReference": "@loopback/repository!Model:class" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JsonSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 4, "endIndex": 5 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "modelCtor", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 3 } } ], "name": "getWhereJsonSchemaFor" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!isArrayType:function(1)", "docComment": "/**\n * Determines whether a given string or constructor is array type or not\n *\n * @param type - Type as string or wrapper\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function isArrayType(type: " }, { "kind": "Content", "text": "string | " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": "): " }, { "kind": "Content", "text": "boolean" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 4, "endIndex": 5 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "type", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 3 } } ], "name": "isArrayType" }, { "kind": "Variable", "canonicalReference": "@loopback/repository-json-schema!JSON_SCHEMA_KEY:var", "docComment": "/**\n * Metadata key used to set or retrieve repository JSON Schema\n */\n", "excerptTokens": [ { "kind": "Content", "text": "JSON_SCHEMA_KEY: " }, { "kind": "Reference", "text": "MetadataAccessor", "canonicalReference": "@loopback/metadata!MetadataAccessor:class" }, { "kind": "Content", "text": "<{\n [key: string]: " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";\n}, " }, { "kind": "Reference", "text": "ClassDecorator", "canonicalReference": "!ClassDecorator:type" }, { "kind": "Content", "text": ">" } ], "releaseTag": "Public", "name": "JSON_SCHEMA_KEY", "variableTypeTokenRange": { "startIndex": 1, "endIndex": 7 } }, { "kind": "Interface", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions:interface", "docComment": "", "excerptTokens": [ { "kind": "Content", "text": "export interface JsonSchemaOptions<T extends " }, { "kind": "Content", "text": "object" }, { "kind": "Content", "text": "> " } ], "releaseTag": "Public", "typeParameters": [ { "typeParameterName": "T", "constraintTokenRange": { "startIndex": 1, "endIndex": 2 }, "defaultTypeTokenRange": { "startIndex": 0, "endIndex": 0 } } ], "name": "JsonSchemaOptions", "members": [ { "kind": "PropertySignature", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions#exclude:member", "docComment": "/**\n * List of model properties to exclude from the schema.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "exclude?: " }, { "kind": "Content", "text": "(keyof T)[]" }, { "kind": "Content", "text": ";" } ], "releaseTag": "Public", "name": "exclude", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "kind": "PropertySignature", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions#includeRelations:member", "docComment": "/**\n * Set this flag if you want the schema to define navigational properties for model relations.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "includeRelations?: " }, { "kind": "Content", "text": "boolean" }, { "kind": "Content", "text": ";" } ], "releaseTag": "Public", "name": "includeRelations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "kind": "PropertySignature", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions#optional:member", "docComment": "/**\n * List of model properties to mark as optional. Overrides the \"partial\" option if it is not empty.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "optional?: " }, { "kind": "Content", "text": "(keyof T)[]" }, { "kind": "Content", "text": ";" } ], "releaseTag": "Public", "name": "optional", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "kind": "PropertySignature", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions#partial:member", "docComment": "/**\n * Set this flag to mark all model properties as optional. This is typically used to describe request body of PATCH endpoints. This option will be overridden by the \"optional\" option if it is set and non-empty.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "partial?: " }, { "kind": "Content", "text": "boolean" }, { "kind": "Content", "text": ";" } ], "releaseTag": "Public", "name": "partial", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "kind": "PropertySignature", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions#title:member", "docComment": "/**\n * The title to use in the generated schema.\n *\n * When using options like `exclude`, the auto-generated title can be difficult to read for humans. Use this option to change the title to a more meaningful value.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "title?: " }, { "kind": "Content", "text": "string" }, { "kind": "Content", "text": ";" } ], "releaseTag": "Public", "name": "title", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } } ], "extendsTokenRanges": [] }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!metaToJsonProperty:function(1)", "docComment": "/**\n * Converts property metadata into a JSON property definition\n *\n * @param - meta\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function metaToJsonProperty(meta: " }, { "kind": "Reference", "text": "PropertyDefinition", "canonicalReference": "@loopback/repository!PropertyDefinition:interface" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "meta", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 } } ], "name": "metaToJsonProperty" }, { "kind": "Enum", "canonicalReference": "@loopback/repository-json-schema!MODEL_TYPE_KEYS:enum", "docComment": "/**\n * TODO(semver-major) remove these constants in the next major version\n *\n * @deprecated\n *\n * Use the helper `buildModelCacheKey` to obtain the cache key for a given set of schema options.\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare const enum MODEL_TYPE_KEYS " } ], "releaseTag": "Public", "name": "MODEL_TYPE_KEYS", "members": [ { "kind": "EnumMember", "canonicalReference": "@loopback/repository-json-schema!MODEL_TYPE_KEYS.ModelOnly:member", "docComment": "", "excerptTokens": [ { "kind": "Content", "text": "ModelOnly = " }, { "kind": "Content", "text": "\"modelOnly\"" } ], "releaseTag": "Public", "name": "ModelOnly", "initializerTokenRange": { "startIndex": 1, "endIndex": 2 } }, { "kind": "EnumMember", "canonicalReference": "@loopback/repository-json-schema!MODEL_TYPE_KEYS.ModelWithRelations:member", "docComment": "", "excerptTokens": [ { "kind": "Content", "text": "ModelWithRelations = " }, { "kind": "Content", "text": "\"modelWithRelations\"" } ], "releaseTag": "Public", "name": "ModelWithRelations", "initializerTokenRange": { "startIndex": 1, "endIndex": 2 } } ] }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!modelToJsonSchema:function(1)", "docComment": "/**\n * Converts a TypeScript class into a JSON Schema using TypeScript's reflection API\n *\n * @param ctor - Constructor of class to convert from\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function modelToJsonSchema<T extends " }, { "kind": "Content", "text": "object" }, { "kind": "Content", "text": ">(ctor: " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": " & {\n prototype: T;\n}" }, { "kind": "Content", "text": ", jsonSchemaOptions?: " }, { "kind": "Reference", "text": "JsonSchemaOptions", "canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions:interface" }, { "kind": "Content", "text": "<T>" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "JSONSchema", "canonicalReference": "@types/json-schema!JSONSchema6:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 9, "endIndex": 10 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "ctor", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 5 } }, { "parameterName": "jsonSchemaOptions", "parameterTypeTokenRange": { "startIndex": 6, "endIndex": 8 } } ], "typeParameters": [ { "typeParameterName": "T", "constraintTokenRange": { "startIndex": 1, "endIndex": 2 }, "defaultTypeTokenRange": { "startIndex": 0, "endIndex": 0 } } ], "name": "modelToJsonSchema" }, { "kind": "Function", "canonicalReference": "@loopback/repository-json-schema!stringTypeToWrapper:function(1)", "docComment": "/**\n * Gets the wrapper function of primitives string, number, and boolean\n *\n * @param type - Name of type\n */\n", "excerptTokens": [ { "kind": "Content", "text": "export declare function stringTypeToWrapper(type: " }, { "kind": "Content", "text": "string | " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": "): " }, { "kind": "Reference", "text": "Function", "canonicalReference": "!Function:interface" }, { "kind": "Content", "text": ";" } ], "returnTypeTokenRange": { "startIndex": 4, "endIndex": 5 }, "releaseTag": "Public", "overloadIndex": 1, "parameters": [ { "parameterName": "type", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 3 } } ], "name": "stringTypeToWrapper" } ] } ] }