superfly-timeline
Version:
Resolver for defining objects with temporal boolean logic relationships on a timeline
34 lines • 2.1 kB
TypeScript
import { TimelineObjectInstance } from '../api/resolvedTimeline';
import { ResolvedTimelineHandler } from './ResolvedTimelineHandler';
import { EventForInstance } from './lib/event';
import { ValueWithReference } from './lib/reference';
export declare class InstanceHandler {
private resolvedTimeline;
constructor(resolvedTimeline: ResolvedTimelineHandler);
invertInstances(instances: TimelineObjectInstance[]): TimelineObjectInstance[];
/**
* Converts a list of events into a list of instances.
* @param events The list of start- and end- events
* @param allowMerge If true, will merge instances that overlap into one.
* @param allowZeroGaps If true, allows zero-length gaps between instances. If false, will combine the two into one instance.
* @param omitOriginalStartEnd Of true, will not keep .originalStart and .originalEnd of the instances
*/
convertEventsToInstances(events: EventForInstance[], allowMerge: boolean, allowZeroGaps?: boolean, omitOriginalStartEnd?: boolean): TimelineObjectInstance[];
private handleActiveInstances;
/**
* Clean up instances, join overlapping etc..
* @param instances
*/
cleanInstances(instances: TimelineObjectInstance[], allowMerge: boolean, allowZeroGaps?: boolean): TimelineObjectInstance[];
/**
* Cap instances so that they are within their parentInstances
* @param instances
* @param cappingInstances
*/
capInstances(instances: TimelineObjectInstance[], cappingInstances: ValueWithReference | TimelineObjectInstance[] | null, allowZeroGaps?: boolean): TimelineObjectInstance[];
capInstance(instanceOrg: TimelineObjectInstance, capInstance: TimelineObjectInstance): TimelineObjectInstance;
setInstanceEndTime(instance: TimelineObjectInstance, endTime: number | null): void;
setInstanceStartTime(instance: TimelineObjectInstance, startTime: number): void;
applyRepeatingInstances(instances: TimelineObjectInstance[], repeatTime0: ValueWithReference | null): TimelineObjectInstance[];
}
//# sourceMappingURL=InstanceHandler.d.ts.map