import { IAssetAdapter } from './IAssetAdapter'; /** * Abstract base export class for naming conflict resolution classes. Extend * this to create a strategy export class which the asset library can use to * resolve asset naming conflicts, or use one of the bundled concrete strategy * classes: * * * * @see away.library.AssetLibrary.conflictStrategy * @see away.library.ConflictStrategy * @see away.library.IgnoreConflictStrategy * @see away.library.ErrorConflictStrategy * @see away.library.NumSuffixConflictStrategy */ export declare class ConflictStrategyBase { constructor(); /** * Resolve a naming conflict between two assets. Must be implemented by * concrete strategy classes. */ resolveConflict(changedAsset: IAssetAdapter, oldAsset: IAssetAdapter, assetsDictionary: Object, precedence: string): void; /** * Create instance of this conflict strategy. Used internally by the * AssetLibrary to make sure the same strategy instance is not used in all * AssetLibrary instances, which would break any state caching that happens * inside the strategy class. */ create(): ConflictStrategyBase; /** * Provided as a convenience method for all conflict strategy classes, as a * way to finalize the conflict resolution by applying the new names and * dispatching the correct events. */ _pUpdateNames(ns: string, nonConflictingName: string, oldAsset: IAssetAdapter, newAsset: IAssetAdapter, assetsDictionary: Object, precedence: string): void; } //# sourceMappingURL=ConflictStrategyBase.d.ts.map