import { ModelConfigurationObject } from "../classes/codeConfig"; import { CommonModel } from "../classes/commonModel"; export declare const ModelTypes: readonly ["profile", "account", "event", "custom"]; export declare type ModelType = typeof ModelTypes[number]; declare const STATES: readonly ["ready", "deleted"]; export declare class GrouparooModel extends CommonModel { idPrefix(): string; id: string; createdAt: Date; updatedAt: Date; name: string; type: ModelType; locked: string; state: typeof STATES[number]; getIcon(): "user" | "building" | "location-arrow" | "database"; run(destinationId?: string): Promise; stopPreviousRuns(): Promise; apiData(): Promise<{ id: string; name: string; type: "custom" | "event" | "profile" | "account"; state: "ready" | "deleted"; locked: string; icon: string; createdAt: number; updatedAt: number; }>; getConfigId(): string; getConfigObject(): Promise; static ensureValidType(instance: GrouparooModel): Promise; static noUpdateIfLocked(instance: GrouparooModel): Promise; static updateState(instance: GrouparooModel): Promise; static noDestroyIfLocked(instance: GrouparooModel): Promise; static ensureNotInUse(instance: GrouparooModel): Promise; static invalidateCache(): Promise; } export {};