import { XMLNode } from 'flat-svg'; import { GeometricBounds, Transform } from './types'; export type TransformMatrix = [number, number, number, number, number, number]; export declare const IdentityTransformMatrix: TransformMatrix; export declare function parseIDMLTransform(str: string | undefined): TransformMatrix; export declare function normalizeTransformMatrixForGivenOrigin(matrix: TransformMatrix, // [a, b, c, d, e, f] [originX, originY]: [number, number], [internalOriginX, internalOriginY]: [number, number]): TransformMatrix; export declare function ensureNumber(value: unknown): number | undefined; export declare function serializeNumber(value?: number, defaultValue?: number): string; export declare function ensureArray(value: string | null | undefined): number[] | undefined; export declare function cssifyIDMLTransform(transformMatrix: TransformMatrix): Transform; export declare function createIDMLTransform(transform: Transform): [number, number, number, number, number, number]; export declare function parseIDMLGeometricBounds(geometricBoundsString: string | undefined): { x: number; y: number; width: number; height: number; }; export declare function createIDMLGeometricBounds(bounds: GeometricBounds): number[]; export type IDMLElementAttributeDescriptor = { source: 'attribute'; value: string | null; }; export type IDMLElementPropertyDescriptor = { source: 'property'; propGroup: string; value: string | null | { attributes: { [k: string]: string; }; value: string | null; }[]; attributes: { [k: string]: string; }; }; export type IDMLElementProperty = IDMLElementAttributeDescriptor | IDMLElementPropertyDescriptor; export declare function getIDMLElementProperties(element: Element, allowedPropGroups: string[], excludeKeys?: string[]): { [k: string]: IDMLElementProperty; }; export declare function flattenIDMLProperties(props: ReturnType): { [k: string]: string | { attributes: { [k: string]: string; }; value: string | null; }[] | undefined; }; export declare function serializeElement(tagName: string, modifiedProps: { [k: string]: string | number | boolean | undefined; }, idOrElement: string | Element | undefined, root: HTMLElement, allowedPropGroups: string[], customChildrenNodes?: XMLNode[]): import("flat-svg").ElementNode; export declare function calculateTransformForOrigin({ rotate, scaleX, scaleY, translateX, translateY }: Transform, [originX, originY]: [number, number], internalOrigin: [number, number]): Transform; export declare function normalizeTransformForGivenOrigin(transform: Transform, [originX, originY]: [number, number], internalOrigin: [number, number]): Transform; export declare function ensurePropertyArray(value: string | null | undefined): string[]; export declare function ensureEnumArray(value: string | null | undefined): string[]; export declare function ensureBoolean(value: string | null | undefined, defaultValue?: boolean): boolean; export declare function serializeArray(value?: number[]): string; export declare function getChildTagValue(element: Element | undefined, tagName: string, converter: (str: string) => T, defaultValue: T): T; export declare function getChildTagValueOptional(element: Element | undefined, tagName: string, converter: (str: string) => T, defaultValue: T): T | undefined; //# sourceMappingURL=helpers.d.ts.map