rittenhop-ghost/versions/5.94.2/node_modules/@lexical/list/LexicalList.js.flow

89 lines
2.8 KiB
Plaintext
Raw Normal View History

/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow strict
*/
import type {
LexicalNode,
LexicalEditor,
ParagraphNode,
RangeSelection,
LexicalCommand,
SerializedElementNode,
} from 'lexical';
import {ElementNode} from 'lexical';
type ListNodeTagType = 'ul' | 'ol';
export type ListType = 'number' | 'bullet' | 'check';
declare export function $createListItemNode(
checked?: boolean | void,
): ListItemNode;
declare export function $createListNode(
listType: ListType,
start?: number,
): ListNode;
declare export function $getListDepth(listNode: ListNode): number;
declare export function $handleListInsertParagraph(): boolean;
declare export function $isListItemNode(
node: ?LexicalNode,
): node is ListItemNode;
declare export function $isListNode(
node: ?LexicalNode,
): node is ListNode;
declare export function indentList(): void;
declare export function insertList(
editor: LexicalEditor,
listType: ListType,
): void;
declare export class ListItemNode extends ElementNode {
append(...nodes: LexicalNode[]): this;
replace<N: LexicalNode>(replaceWithNode: N): N;
insertAfter(node: LexicalNode, restoreSelection?: boolean): LexicalNode;
insertNewAfter(): ListItemNode | ParagraphNode;
collapseAtStart(selection: RangeSelection): true;
getIndent(): number;
setIndent(indent: number): this;
insertBefore(nodeToInsert: LexicalNode): LexicalNode;
canInsertAfter(node: LexicalNode): boolean;
canReplaceWith(replacement: LexicalNode): boolean;
canMergeWith(node: LexicalNode): boolean;
getValue(): number;
setValue(value: number): void;
getChecked(): boolean | void;
setChecked(boolean): this;
toggleChecked(): void;
static importJSON(serializedNode: SerializedListItemNode): ListItemNode;
}
declare export class ListNode extends ElementNode {
__tag: ListNodeTagType;
__start: number;
canBeEmpty(): false;
append(...nodesToAppend: LexicalNode[]): this;
getTag(): ListNodeTagType;
getStart(): number;
getListType(): ListType;
static importJSON(serializedNode: SerializedListNode): ListNode;
}
declare export function outdentList(): void;
declare export function removeList(editor: LexicalEditor): boolean;
declare export var INSERT_UNORDERED_LIST_COMMAND: LexicalCommand<void>;
declare export var INSERT_ORDERED_LIST_COMMAND: LexicalCommand<void>;
declare export var INSERT_CHECK_LIST_COMMAND: LexicalCommand<void>;
declare export var REMOVE_LIST_COMMAND: LexicalCommand<void>;
export type SerializedListItemNode = SerializedElementNode & {
checked: boolean | void,
value: number,
};
export type SerializedListNode = SerializedElementNode & {
listType: ListType,
start: number,
tag: ListNodeTagType,
};