import type { VovkControllerSchema, VovkSegmentSchema } from 'vovk/internal'; interface HandlersDiff { nameOfClass: string; added: string[]; removed: string[]; changed: string[]; } interface ControllersDiff { added: string[]; removed: string[]; handlers: HandlersDiff[]; } export interface DiffResult { controllers: ControllersDiff; } export declare function diffHandlers(oldHandlers: T, newHandlers: T, nameOfClass: string): HandlersDiff; export declare function diffControllers(oldItems: T, newItems: T): ControllersDiff; /** example output: { controllers: { added: ["ControllerC"], removed: ["ControllerB"], handlers: [ { nameOfClass: "ControllerA", added: ["handlerF"], removed: [], changed: ["handlerD"] } ] } } */ export declare function diffSegmentSchema(oldJson: VovkSegmentSchema, newJson: VovkSegmentSchema): DiffResult; export {};