import { TagEditorProps } from './interfaces'; export declare function useMemoizedArray(array: ReadonlyArray, isEqual: (prev: T, next: T) => boolean): ReadonlyArray; interface GetTagsDiffResult { created: Record; removed: string[]; } /** * Compares the initial tags with the current tags passed to the tag editor * and returns the differences, identifying which tags have been created or removed. * * This utility can be used to track tag changes and inform your tagging service about * the removed and added tags. * * @param initialTags - The original tags fetched from the backend or tagging service. * @param tags - The current tags provided to the tag editor, including any new or modified tags. * @returns An object containing two arrays: * - `created`: An record of tags that are new or updated (with modified values). * Each tag is represented by its `key` and `value`. * - `removed`: An array of tag keys that were present in the initial tags but marked for removal. * * Updated tags are treated as both `created` and `removed` tags. */ export declare function getTagsDiff(initialTags: readonly TagEditorProps.Tag[], tags: readonly TagEditorProps.Tag[]): GetTagsDiffResult; export {};