32 lines
914 B
Plaintext
32 lines
914 B
Plaintext
|
/**
|
||
|
* 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.
|
||
|
*
|
||
|
* @format
|
||
|
* @flow strict
|
||
|
*/
|
||
|
|
||
|
import type {ArrayLike} from './ArrayLikeUtils';
|
||
|
|
||
|
declare export default class NodeList<+T> implements Iterable<T>, ArrayLike<T> {
|
||
|
// This property should've been read-only as well, but Flow doesn't handle
|
||
|
// read-only indexers correctly (thinks reads are writes and fails).
|
||
|
[index: number]: T;
|
||
|
+length: number;
|
||
|
item(index: number): T | null;
|
||
|
entries(): Iterator<[number, T]>;
|
||
|
forEach<ThisType>(
|
||
|
callbackFn: (value: T, index: number, array: NodeList<T>) => mixed,
|
||
|
thisArg?: ThisType,
|
||
|
): void;
|
||
|
keys(): Iterator<number>;
|
||
|
values(): Iterator<T>;
|
||
|
@@iterator(): Iterator<T>;
|
||
|
}
|
||
|
|
||
|
declare export function createNodeList<T>(
|
||
|
elements: $ReadOnlyArray<T>,
|
||
|
): NodeList<T>;
|