import { IResourceEntity } from "../../interfaces/api"; import { TConstructor } from "../../types"; import { ITag, TagAttributes } from "../../api/activeRecords/Tag"; import { IRequestOptions } from "../../interfaces/common"; import { IHasUpdatableTagsFactory } from "../factories/hasUpdatableTags"; export interface IEntityHasUpdatableTagList>> { update(criteria: (TagAttributes | ITag)[] | null, options?: IRequestOptions): Promise[]>; clear(options?: IRequestOptions): Promise[]>; } export interface IEntityHasUpdatableTags>> extends IResourceEntity { get tagsList(): IEntityHasUpdatableTagList; updateTags(criteria: (TagAttributes | ITag)[] | null, options?: IRequestOptions): Promise[]>; clearTags(options?: IRequestOptions): Promise[]>; } export declare function hasUpdatableTags>>(constructor: TConstructor>): { new (...args: any[]): { _tagList?: IEntityHasUpdatableTagList | undefined; readonly tagList: IEntityHasUpdatableTagList; updateTags(criteria: (TagAttributes | ITag)[] | null, options?: IRequestOptions): Promise[]>; clearTags(options?: IRequestOptions): Promise[]>; id?: number | undefined; updated_at?: number | undefined; criteriaBuilder: import("../../api/activeRecords/common/EntityCriteriaBuilder").IEntityCriteriaBuilder; isNew(): boolean; getFactory(): T; getAttributes(): import("../../interfaces/api").IEntityAttributes; setAttributes(attributes?: import("../../interfaces/api").IEntityAttributes | undefined): void; until(eventName: string | symbol): Promise; subscribe(subscriber: import("../../common/EventEmitter").IEventEmitter): import("../../common/EventEmitter").IEventEmitter; unsubscribe(subscriber: import("../../common/EventEmitter").IEventEmitter): import("../../common/EventEmitter").IEventEmitter; emit(eventName: string | symbol, ...args: unknown[]): boolean; addListener(eventName: string | symbol, listener: (...args: any[]) => void): any; on(eventName: string | symbol, listener: (...args: any[]) => void): any; once(eventName: string | symbol, listener: (...args: any[]) => void): any; removeListener(eventName: string | symbol, listener: (...args: any[]) => void): any; off(eventName: string | symbol, listener: (...args: any[]) => void): any; removeAllListeners(event?: string | symbol | undefined): any; setMaxListeners(n: number): any; getMaxListeners(): number; listeners(eventName: string | symbol): Function[]; rawListeners(eventName: string | symbol): Function[]; listenerCount(eventName: string | symbol): number; prependListener(eventName: string | symbol, listener: (...args: any[]) => void): any; prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): any; eventNames(): (string | symbol)[]; }; };