import { InlineAnchor } from '../types/base.js'; import { TextTarget } from '../types/address.js'; import { AdapterMutationFailure } from '../types/adapter-result.js'; import { DiscoveryOutput } from '../types/discovery.js'; import { TocCreateLocation } from '../toc/toc.types.js'; export interface IndexAddress { kind: 'block'; nodeType: 'index'; nodeId: string; } export interface IndexEntryAddress { kind: 'inline'; nodeType: 'indexEntry'; anchor: InlineAnchor; } export interface IndexConfig { headingSeparator?: string; entryPageSeparator?: string; pageRangeSeparator?: string; sequenceId?: string; columns?: number; entryTypeFilter?: string; pageRangeBookmark?: string; letterRange?: { from: string; to: string; }; runIn?: boolean; accentedSorting?: boolean; } export interface IndexEntryData { text: string; subEntry?: string; bold?: boolean; italic?: boolean; crossReference?: string; pageRangeBookmark?: string; entryType?: string; yomi?: string; } export interface IndexListInput { limit?: number; offset?: number; } export interface IndexGetInput { target: IndexAddress; } export interface IndexInsertInput { at: TocCreateLocation; config?: IndexConfig; } export interface IndexConfigureInput { target: IndexAddress; patch: IndexConfig; } export interface IndexRebuildInput { target: IndexAddress; } export interface IndexRemoveInput { target: IndexAddress; } export interface IndexEntryListInput { entryType?: string; limit?: number; offset?: number; } export interface IndexEntryGetInput { target: IndexEntryAddress; } export interface IndexEntryInsertInput { at: TextTarget; entry: IndexEntryData; } export interface IndexEntryUpdateInput { target: IndexEntryAddress; patch: Partial; } export interface IndexEntryRemoveInput { target: IndexEntryAddress; } export interface IndexInfo { address: IndexAddress; instruction: string; config: IndexConfig; entryCount: number; } export interface IndexDomain { address: IndexAddress; instruction: string; config: IndexConfig; entryCount: number; } export interface IndexEntryInfo { address: IndexEntryAddress; text: string; subEntry?: string; bold: boolean; italic: boolean; crossReference?: string; pageRangeBookmark?: string; entryType?: string; instruction: string; } export interface IndexEntryDomain { address: IndexEntryAddress; text: string; subEntry?: string; bold: boolean; italic: boolean; instruction: string; } export interface IndexMutationSuccess { success: true; index: IndexAddress; } export type IndexMutationResult = IndexMutationSuccess | AdapterMutationFailure; export interface IndexEntryMutationSuccess { success: true; entry: IndexEntryAddress; } export type IndexEntryMutationResult = IndexEntryMutationSuccess | AdapterMutationFailure; export type IndexListResult = DiscoveryOutput; export type IndexEntryListResult = DiscoveryOutput; //# sourceMappingURL=index.types.d.ts.map