import type { KismetPosition, Sequence, SequenceItemType } from '../structures/index.js'; import type { KismetConnectionType } from '../item/index.js'; export type KismetGroupResolverIdType = string | number; export interface KismetGroupSchema { /** * The name of the group */ name: string; /** * The id of the group */ id: string; /** * The items in this group. * Each item has: * - item class * - id * - outside links (optional) */ items: [ SequenceItemType, KismetGroupResolverIdType, Partial> | undefined ][]; } export interface KismetGroupSerializeOptions { /** * The offset position for each item in the group */ position?: KismetPosition; } export declare class KismetGroup { private schema; name: string; readonly id: string; constructor(schema: KismetGroupSchema); private get connections(); private resolveConnection; resolveInputId(id: KismetGroupResolverIdType): string | undefined; resolveItem(id: KismetGroupResolverIdType): SequenceItemType | undefined; setOutsideConnection(from: { id: KismetGroupResolverIdType; name: string; }, to: { item: SequenceItemType; name: string; type: KismetConnectionType; }): this | undefined; /** * Convert the group to sequence items and add the items to the provided sequence * @param sequence The sequence to add the items to * @param options The options to apply when adding the items to the sequence */ serialize(sequence: Sequence, options?: KismetGroupSerializeOptions): Sequence; /** * * @param id * @param newItem * @returns */ updateItem(id: KismetGroupResolverIdType, newItem: SequenceItemType): this | undefined; } //# sourceMappingURL=Group.d.ts.map