/** * Copyright 2017 Matt Acosta * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * Provides access to a lazily loaded external resource. * * @template T */ export declare class ResourceSet { /** * The location of the resource. */ protected resourcePath: string; /** * A key-value store for the resource data. */ protected resources: { [key: string]: T; } | null; /** * Constructs a `ResourceSet` object. * * @param {string} resourcePath * The location of the resource. */ constructor(resourcePath: string); /** * Gets a value from the resource set. * * @param {string} key * The identifier of the object in the resource set. */ get(key: string): T; /** * Loads an external resource. * * @param {string} resourcePath * The location of the resource. * * @returns {object} * A key-value store containing the resource set's data. */ protected loadResource(path: string): { [key: string]: T; }; }