/** @packageDocumentation * @module Locaters */ import { ISchemaLocater, Schema, SchemaContext, SchemaInfo, SchemaKey, SchemaMatchType } from "@itwin/ecschema-metadata"; import { SchemaFileLocater } from "./SchemaFileLocater"; /** * A SchemaLocator implementation for locating JSON Schema files * from the file system using configurable search paths. * @public @preview */ export declare class SchemaJsonFileLocater extends SchemaFileLocater implements ISchemaLocater { /** * Constructs a SchemaKey based on the information in the Schema JSON * @param data The Schema JSON as a string * @internal */ protected getSchemaKey(data: string): SchemaKey; /** * Attempts to retrieve a Schema with the given SchemaKey by using the configured * search paths to locate the JSON schema file from the file system. * @param key The SchemaKey of the Schema to retrieve. * @param matchType The SchemaMatchType. * @param context The SchemaContext that will control the lifetime of the schema and holds the schema's references, if they exist. */ getSchema(schemaKey: SchemaKey, matchType: SchemaMatchType, context: SchemaContext): Promise; /** * Gets the schema info which matches the provided SchemaKey. The schema info may be returned before the schema is fully loaded. * The fully loaded schema can be gotten later from the context using the getCachedSchema method. * @param schemaKey The SchemaKey describing the schema to get from the cache. * @param matchType The match type to use when locating the schema * @param context The SchemaContext that will control the lifetime of the schema and holds the schema's references, if they exist. */ getSchemaInfo(schemaKey: SchemaKey, matchType: SchemaMatchType, context: SchemaContext): Promise; /** * Attempts to retrieve a Schema with the given SchemaKey by using the configured * search paths to locate the JSON schema file from the file system. * @param key The SchemaKey of the Schema to retrieve. * @param matchType The SchemaMatchType * @param context The SchemaContext that will control the lifetime of the schema. */ getSchemaSync(schemaKey: SchemaKey, matchType: SchemaMatchType, context: SchemaContext): Schema | undefined; } //# sourceMappingURL=SchemaJsonFileLocater.d.ts.map