import { CfgProduct } from "../../CfgProduct"; import { CfgFeature } from "../../productConfiguration/CfgFeature"; import { CfgOption } from "../../productConfiguration/CfgOption"; import { CfgProductConfiguration } from "../../productConfiguration/CfgProductConfiguration"; declare type SnapShotForWrapper = { path: string; selected: boolean; }; export declare type SnapShotForWrapperWithoutRef = SnapShotForWrapper & { productConfiguration: SnapShotForConfiguration; additionalProducts: SnapShotForWrapper[]; }; declare type SnapShotForWrapperWithRef = SnapShotForWrapper & { ref: CfgProduct; productConfiguration: SnapShotForConfigurationWithRef; additionalProducts: SnapShotForWrapperWithRef[]; }; declare type SnapShotForConfiguration = { path: string; }; declare type SnapShotForConfigurationWithoutRef = SnapShotForConfiguration & { features: SnapShotForFeature[]; }; declare type SnapShotForConfigurationWithRef = SnapShotForConfiguration & { ref: CfgProductConfiguration; features: SnapShotForFeatureWithRef[]; }; declare type SnapShotForFeature = { path: string; }; declare type SnapShotForFeatureWithoutRef = SnapShotForFeature & { options: SnapShotForOption[]; }; declare type SnapShotForFeatureWithRef = SnapShotForFeature & { ref: CfgFeature; options: SnapShotForOptionWithRef[]; }; declare type SnapShotForOption = { path: string; selected: boolean; }; declare type SnapShotForOptionWithoutRef = SnapShotForOption & { features: SnapShotForFeature[]; }; declare type SnapShotForOptionWithRef = SnapShotForOption & { ref: CfgOption; features: SnapShotForFeatureWithRef[]; }; export declare class Collector { product: CfgProduct; static stripRefsForWrapper: (w: SnapShotForWrapperWithRef) => SnapShotForWrapperWithoutRef; static stripRefsForConf: (c: SnapShotForConfigurationWithRef) => SnapShotForConfigurationWithoutRef; static stripRefsForFeature: (f: SnapShotForFeatureWithRef) => SnapShotForFeatureWithoutRef; static stripRefsForOption: (o: SnapShotForOptionWithRef) => SnapShotForOptionWithoutRef; constructor(product: CfgProduct); notifications: string[]; pushNotification: (message: string) => void; takeSnapshot: () => SnapShotForWrapperWithRef; compareSnapshot: (o: SnapShotForWrapperWithRef, n: SnapShotForWrapperWithRef) => string[]; takeRefSnapshotForWrapper: (path: string, product: CfgProduct) => SnapShotForWrapperWithRef; compareSnapshotForWrapper: (result: string[], o: SnapShotForWrapperWithRef, n: SnapShotForWrapperWithRef) => void; takeRefSnapshopForConf: (path: string, productConfiguration: CfgProductConfiguration) => SnapShotForConfigurationWithRef; compareSnapshopForConf: (result: string[], o: SnapShotForConfigurationWithRef, n: SnapShotForConfigurationWithRef) => void; takeRefSnapshotForFeature: (path: string, feature: CfgFeature) => SnapShotForFeatureWithRef; compareSnapshopForFeature: (result: string[], o: SnapShotForFeatureWithRef, n: SnapShotForFeatureWithRef) => void; takeRefSnapshotForOption: (path: string, option: CfgOption) => SnapShotForOptionWithRef; compareSnapshopForOption: (result: string[], o: SnapShotForOptionWithRef, n: SnapShotForOptionWithRef) => void; addListenersForProduct: (path: string, product: CfgProduct) => void; addListenersForProductConfiguration: (path: string, productConfiguration: CfgProductConfiguration) => void; addListenersForFeature: (path: string, feature: CfgFeature) => void; addListenersForOption: (path: string, option: CfgOption) => void; } export {}; //# sourceMappingURL=collectorForTest.d.ts.map