import { PropertyType } from "./property-type"; import { ObjectProps } from "./props"; export type PropertySetData = T; export declare function assertPropertySet(props: ObjectProps, expectedId: number): void; /** FILETIME: 100-nanosecond intervals since 1601-01-01 → epoch milliseconds. */ export declare function filetimeToMs(timestamp: number): number; /** OneNote "Time" values: seconds since 1980-01-01 → epoch milliseconds. */ export declare function oneNoteTimeToMs(time: number): number; export declare function parseF32Value(value: number): number; export type Color = { alpha: number; r: number; g: number; b: number; }; export declare function parseColor(props: ObjectProps, propType: PropertyType): Color | undefined; export type ColorRef = { type: "auto"; } | { type: "manual"; r: number; g: number; b: number; }; export declare function parseColorRef(props: ObjectProps, propType: PropertyType): ColorRef | undefined; export declare enum Charset { Ansi = 0, Default = 1, Symbol = 2, Mac = 3, ShiftJis = 4, Hangul = 5, Johab = 6, Gb2312 = 7, ChineseBig5 = 8, Greek = 9, Turkish = 10, Vietnamese = 11, Hebrew = 12, Arabic = 13, Baltic = 14, Russian = 15, Thai = 16, EastEurope = 17, Oem = 18 } export declare function parseCharset(props: ObjectProps, propType: PropertyType): Charset | undefined; export declare enum ParagraphAlignment { Unknown = 0, Left = 1, Center = 2, Right = 3 } export declare function parseParagraphAlignment(props: ObjectProps): ParagraphAlignment | undefined; export type LayoutAlignment = { alignmentHorizontal: number; alignmentMarginHorizontal: number; alignmentVertical: number; alignmentMarginVertical: number; }; export declare function parseLayoutAlignment(props: ObjectProps, propType: PropertyType): LayoutAlignment | undefined; export type NoteTagShape = number; export declare function parseNoteTagShape(value: number): NoteTagShape; export declare function isCheckableNoteTagShape(shape: NoteTagShape): boolean; export type NoteTagPropertyStatus = { hasLabel: boolean; hasFontColor: boolean; hasHighlightColor: boolean; hasIcon: boolean; dueToday: boolean; dueTomorrow: boolean; dueThisWeek: boolean; dueNextWeek: boolean; dueLater: boolean; dueCustom: boolean; }; export declare function parseNoteTagPropertyStatus(props: ObjectProps): NoteTagPropertyStatus | undefined; export type ActionItemStatus = { completed: boolean; disabled: boolean; taskTag: boolean; }; export declare function parseActionItemStatus(props: ObjectProps): ActionItemStatus | undefined; export type ActionItemType = { type: "numeric"; value: number; } | { type: "due"; value: "today" | "tomorrow" | "thisWeek" | "nextWeek" | "noDueDate" | "custom"; } | { type: "unknown"; }; export declare function parseActionItemType(props: ObjectProps): ActionItemType | undefined; export declare enum FileType { Unknown = 0, Audio = 1, Video = 2 } export declare function parseFileType(props: ObjectProps): FileType; export type OutlineIndentDistance = number[]; export declare function parseOutlineIndentDistance(props: ObjectProps): OutlineIndentDistance | undefined; export declare function toLeBytes(value: number, size: number): number[]; export declare function parseSectionMetadata(props: ObjectProps): { displayName: string | undefined; color: Color | undefined; }; export declare function parseSectionNode(props: ObjectProps): { pageSeries: string[]; }; export declare function parsePageSeriesNode(props: ObjectProps): { pageSpaces: string[]; pageMetadata: string[]; }; /** * XOR an extended GUID key ({GUID} [n]) with a seed GUID. * Mirrors the Rust implementation which XORs the ExGuid (guid + n) with * the seed {22a8c031-3600-42ee-b714-d7acda2435e8, 0}. */ export declare function xorExtendedGuidKey(key: string, seedGuid: string): string; export declare function parsePageManifest(props: ObjectProps): { page: string; }; export declare function parsePageMetadata(props: ObjectProps): { entityGuid: string; cachedTitle: string | undefined; pageLevel: number; createdAtMs: number; isDeleted: boolean; }; export declare function parsePageNode(props: ObjectProps): { lastModifiedMs: number | undefined; cachedTitle: string | undefined; author: string | undefined; content: string[]; title: string; recognizedText: string | undefined; pageWidth: number | undefined; pageHeight: number | undefined; }; export declare function parseTitleNode(props: ObjectProps): { children: string[]; offsetHorizontal: number; offsetVertical: number; layoutAlignmentInParent: LayoutAlignment | undefined; layoutAlignmentSelf: LayoutAlignment | undefined; }; export declare function parseTocContainer(props: ObjectProps): { children: string[]; filename: string | undefined; orderingId: number | undefined; color: Color | undefined; }; export declare function parseOutlineNode(props: ObjectProps): { children: string[]; childLevel: number; indents: OutlineIndentDistance; listSpacing: number | undefined; alignmentInParent: LayoutAlignment | undefined; alignmentSelf: LayoutAlignment | undefined; layoutMaxHeight: number | undefined; layoutMaxWidth: number | undefined; layoutReservedWidth: number | undefined; layoutMinimumOutlineWidth: number | undefined; isLayoutSizeSetByUser: boolean; offsetHorizontal: number | undefined; offsetVertical: number | undefined; }; export declare function parseOutlineGroup(props: ObjectProps): { children: string[]; childLevel: number; }; export declare function parseOutlineElementNode(props: ObjectProps): { children: string[]; childLevel: number; contents: string[]; listContents: string[]; listSpacing: number | undefined; }; export declare function parseRichTextNode(props: ObjectProps): { text: string | undefined; textRunFormatting: string[]; textRunIndices: number[]; textRunDataObject: string[]; paragraphStyle: string | undefined; paragraphSpaceBefore: number; paragraphSpaceAfter: number; paragraphLineSpacingExact: number | undefined; paragraphAlignment: ParagraphAlignment; layoutAlignmentInParent: LayoutAlignment | undefined; layoutAlignmentSelf: LayoutAlignment | undefined; noteTags: NoteTagContainerData[]; }; export type ParagraphStyleData = { charset?: Charset; bold: boolean; italic: boolean; underline: boolean; strikethrough: boolean; superscript: boolean; subscript: boolean; font?: string; fontSize?: number; fontColor?: ColorRef; highlight?: ColorRef; nextStyle?: string; styleId?: string; paragraphAlignment?: ParagraphAlignment; paragraphSpaceBefore?: number; paragraphSpaceAfter?: number; paragraphLineSpacingExact?: number; languageCode?: number; mathFormatting: boolean; hyperlink: boolean; hyperlinkProtected: boolean; hidden: boolean; textRunIsEmbeddedObject: boolean; textRunObjectType?: number; }; export declare function parseParagraphStyleObject(props: ObjectProps): ParagraphStyleData; export type NoteTagContainerData = { definition?: string; completedAtMs?: number; itemStatus: ActionItemStatus; }; export declare function parseNoteTagContainers(props: ObjectProps): NoteTagContainerData[]; export declare function parseNoteTagSharedDefinitionContainer(props: ObjectProps): { label: string; status: NoteTagPropertyStatus; shape: number; highlightColor: ColorRef | undefined; textColor: ColorRef | undefined; actionItemType: ActionItemType; }; export declare function parseNumberListNode(props: ObjectProps): { listFont: string | undefined; listRestart: number | undefined; listFormat: string[]; bold: boolean; italic: boolean; font: string | undefined; fontSize: number | undefined; fontColor: ColorRef | undefined; }; export declare function parseTableNode(props: ObjectProps): { rows: string[]; rowCount: number; colCount: number; colsLocked: Uint8Array | never[]; colWidths: number[]; bordersVisible: boolean; layoutAlignmentInParent: LayoutAlignment | undefined; layoutAlignmentSelf: LayoutAlignment | undefined; noteTags: NoteTagContainerData[]; }; export declare function parseTableRowNode(props: ObjectProps): { cells: string[]; }; export declare function parseTableCellNode(props: ObjectProps): { contents: string[]; layoutMaxWidth: number | undefined; indents: OutlineIndentDistance; backgroundColor: Color | undefined; }; export declare function parseImageNode(props: ObjectProps): { pictureContainer: string | undefined; layoutMaxWidth: number | undefined; layoutMaxHeight: number | undefined; isLayoutSizeSetByUser: boolean; altText: string | undefined; layoutAlignmentInParent: LayoutAlignment | undefined; layoutAlignmentSelf: LayoutAlignment | undefined; imageFilename: string | undefined; displayedPageNumber: number | undefined; text: string | undefined; pictureWidth: number | undefined; pictureHeight: number | undefined; hyperlinkUrl: string | undefined; offsetHorizontal: number | undefined; offsetVertical: number | undefined; isBackground: boolean; noteTags: NoteTagContainerData[]; iframe: string[]; }; export declare function parsePictureContainer(props: ObjectProps): { data: Uint8Array; extension: string | undefined; }; export declare function parseEmbeddedFileNode(props: ObjectProps): { pictureContainer: string | undefined; layoutMaxWidth: number | undefined; layoutMaxHeight: number | undefined; text: string | undefined; layoutAlignmentInParent: LayoutAlignment | undefined; layoutAlignmentSelf: LayoutAlignment | undefined; embeddedFileContainer: string | undefined; embeddedFileName: string | undefined; sourcePath: string | undefined; fileType: FileType; pictureWidth: number | undefined; pictureHeight: number | undefined; noteTags: NoteTagContainerData[]; offsetHorizontal: number | undefined; offsetVertical: number | undefined; }; export declare function parseEmbeddedFileContainer(props: ObjectProps): Uint8Array; export declare function parseInkContainer(props: ObjectProps): { offsetHorizontal: number | undefined; offsetVertical: number | undefined; inkData: string | undefined; children: string[]; inkScalingX: number | undefined; inkScalingY: number | undefined; }; export declare function parseInkDataNode(props: ObjectProps): { strokes: string[]; boundingBox: { xMin: number; yMin: number; xMax: number; yMax: number; } | undefined; }; export declare function parseInkStrokeNode(props: ObjectProps): { path: number[]; bias: number; languageCode: number | undefined; properties: string; }; declare const X_DIMENSION_GUID = "598A6A8F-52C0-4BA0-93AF-AF357411A561"; declare const Y_DIMENSION_GUID = "B53F9F75-04E0-4498-A7EE-C30DBB5A9011"; export type InkDimension = { id: string; limitLower: number; limitUpper: number; }; export declare function parseStrokePropertiesNode(props: ObjectProps): { aliased: boolean; fitToCurve: boolean; ignorePressure: boolean; penTip: number | undefined; rasterOperation: number | undefined; transparency: number | undefined; inkHeight: number; inkWidth: number; color: number | undefined; dimensions: InkDimension[]; }; export declare function parseEmbeddedInkContainer(props: ObjectProps): { spaceWidth: number | undefined; spaceHeight: number | undefined; startX: number | undefined; startY: number | undefined; height: number | undefined; width: number | undefined; offsetHoriz: number | undefined; offsetVert: number | undefined; }; export declare function parseRecognizedTextChildren(props: ObjectProps): string[]; export declare function parseRecognizedTextWord(props: ObjectProps): { alternatives: string[]; languageId: number | undefined; }; /** Decode a multi-byte encoded signed integer array per [MS-ISF]. */ export declare function decodeSignedMultiByte(input: Uint8Array): number[]; export { X_DIMENSION_GUID, Y_DIMENSION_GUID };