import { Query } from './query' import { Finder } from './finder' import { CLASS, DATA, NameBase, DEFAULT_RULE_TYPE } from './type' export declare class Set { static $name: NameBase $name: NameBase all: Query finder: Finder model: CLASS constructor({ $name, all, model }: { $name: any; all: any; model: any }) set: (this: Set, list: DATA, parent?: Object | undefined) => void reset: (this: Set, list: DATA, parent?: Object | undefined) => void merge: (this: Set, list: DATA, parent?: Object | undefined) => void add: (this: Set, item: Partial, parent?: Object | undefined) => void append: (this: Set, item: Partial, parent?: Object | undefined) => void reject: (this: Set, list: DATA, parent?: Object | undefined) => void del: (this: Set, item: Partial, parent?: Object | undefined) => void remove: (this: Set, item: Partial, parent?: Object | undefined) => void updates: typeof f_update update: (this: Set, item: Partial, parent?: Object | undefined) => void clear_cache: typeof f_clear refresh: typeof f_clear rehash: typeof f_clear find(...ids: string[]): import('./model').Model | import('./struct').Struct | null } declare function f_update( this: Set, list: DATA, parent: Object ): void declare function f_clear(this: Set, is_hit?: boolean): void export {}