/*! * Copyright (c) Microsoft Corporation and contributors. All rights reserved. * Licensed under the MIT License. */ /** * Any mapping from a string to values of type `T` * @legacy @beta */ export interface MapLike { [index: string]: T; } /** * A loosely-typed mapping from strings to any value. * * @remarks Property sets are expected to be JSON-stringify-able. * * @privateRemarks PropertySet is typed using `any` because when you include * custom methods such as toJSON(), JSON.stringify accepts most types other than * functions * @legacy @beta */ export type PropertySet = MapLike; /** * Compares two PropertySets for equality. * * @internal */ export declare function matchProperties(a: PropertySet | undefined, b: PropertySet | undefined): boolean; /** * Adds properties from one PropertySet to another. * * @internal */ export declare function extend(base: MapLike, extension: MapLike | undefined): MapLike; /** * Clones properties in a given PropertySet into a new PropertySet. * * @internal */ export declare function clone(extension: MapLike | undefined): MapLike | undefined; /** * Add properties in one PropertySet to another PropertySet. If the PropertySet we are adding * to does not exist, create one. * * @internal */ export declare function addProperties(oldProps: PropertySet | undefined, newProps: PropertySet): PropertySet; /** * Replace values of undefined in one PropertySet with values for the same key from another PropertySet. * * @internal */ export declare function extendIfUndefined(base: MapLike, extension: MapLike | undefined): MapLike; /** * Create a MapLike with good performance. * * @internal */ export declare function createMap(): MapLike; //# sourceMappingURL=properties.d.ts.map