import type { EventActionKeys } from "../../../manifest"; export type TPriority = "chapter" | "container" | "control"; export type TPayload = { actionType: EventActionKeys; action: AnyFn; }; export type TMapInitiator = { [initiator: string]: TPayload[]; }; type TMapPriority = { [priority in TPriority]?: TMapInitiator }; type TMap = { [timestamp: number]: TMapPriority; }; export type TMapFlattened = { timestamp: number; priority: TPriority; initiator: string; } & TPayload; type GetAndRemoveArgType = Partial> & Pick; export type TGroupsStack = ReturnType; export declare function GroupsStack(): { map: TMap; remove: (args: GetAndRemoveArgType) => boolean; add: (args: TMapFlattened) => void; removeAll: () => void; get: (args: GetAndRemoveArgType) => TMapPriority | TMapInitiator | TPayload[] | null; getLte: (timestamp: number) => TMap; getGte: (timestamp: number) => TMap; }; export {};