import { Builder, Vnd } from "@dawntech/dwntbots-models"; import { CanonicalPosition, CanonicalGrid } from "./position"; export declare const NEW_ENTITY = "NEW-ENTITY"; export declare const ID_LENGTH = 36; export declare const MAX_REF_LENGTH = 20; export declare const createPrefixId: (reference?: string, version?: number) => string; export declare const createId: (reference?: string, version?: number) => string; export declare const getReferenceOnId: (id: string) => string | null; export declare const getVersionOnId: (id: string) => number | null; export declare const isSameIdOrRef: (sourceId: string, targetId: string) => boolean; export declare const createBlock: ($title?: string, id?: string) => Builder.Block; export declare const createCondition: (source: string, comparsion: Builder.ConditionComparsion, values?: Array | string) => Builder.Condition; export declare const createConditionOutput: (conditions: Array | Builder.Condition, stateId: string, $id?: string) => Builder.ConditionOutput; export declare const createExecuteScriptAction: (source: string, inputs: Array | string, output: string, conditions?: Array | Builder.Condition, $id?: string) => Builder.ExecuteScriptCustomAction; export declare const createProcessHttpAction: (uri: string, method: Builder.HttpMethod, output: { body: string; status: string; }, body?: string, headers?: Record, conditions?: Array | Builder.Condition, $id?: string) => Builder.ProcessHttpCustomAction; export declare const createProcessCommandAction: (uri: string, to: Builder.CommandTo, method: Builder.CommandMethod, type: Builder.CommandType, output: string, from?: Builder.CommandFrom, resource?: string, metadata?: {}, conditions?: Array | Builder.Condition, $id?: string) => Builder.ProcessCommandCustomAction; export declare const createRedirectAction: (address: string, context: string | { type: string; value: string; }, conditions?: Array | Builder.Condition, $id?: string) => Builder.RedirectCustomAction; export declare const createManageListAction: (listName: string, action: Builder.ManageListAction, conditions?: Array | Builder.Condition, $id?: string) => Builder.ManageListCustomAction; export declare const createTrackEventAction: (action: string, category: string, extras: Record, conditions?: Array | Builder.Condition, $id?: string) => Builder.TrackEventCustomAction; export declare const createMergeContactAction: (contact: Partial, conditions?: Array | Builder.Condition, $id?: string) => Builder.MergeContactCustomAction; export declare const createSetVariableAction: (variable: string, value: string, conditions?: Array | Builder.Condition, $id?: string) => Builder.SetVariableCustomAction; export declare const computeDisplacementPosition: (anchor: Builder.BlockPosition, displacement: CanonicalPosition) => Builder.BlockPosition; export declare const moveBlock: (block: Builder.Block, anchor: Builder.Block, displacement: CanonicalPosition) => void; export declare const pushBlockToGrid: (block: Builder.Block, grid: CanonicalGrid) => void; export declare const getBlock: (flow: Builder.Flow, id: string) => Builder.Block; export declare const getAllBlocks: (flow: Builder.Flow) => Builder.Block[]; export declare const getOrCreateBlock: (flow: Builder.Flow, id: string) => Builder.Block; export declare const isNewBlock: (block: Builder.Block) => boolean; interface InsertOrReplaceOptions { location: "BEFORE" | "AFTER"; at: string | null; replace: boolean; } export declare const insertOrReplace: (elements: T[], element: T, options?: Partial) => T[]; export {};