import numpy as np class Index: def add(self, x: np.ndarray) -> None: ... def search(self, x: np.ndarray, k: int) -> tuple[np.ndarray, np.ndarray]: ... def remove_ids(self, x: np.ndarray) -> None: ... def add_with_ids(self, x: np.ndarray, xids: np.ndarray) -> None: ... ntotal: int class IndexIDMap(Index): def __init__(self, base_index: Index) -> None: ... def add_with_ids(self, x: np.ndarray, xids: np.ndarray) -> None: ... def reconstruct(self, key: int) -> np.ndarray: ... class IndexFlatL2(Index): def __init__(self, d: int) -> None: ... def read_index(filename: str) -> Index: ... def write_index(index: Index, filename: str | None) -> None: ... def normalize_L2(x: np.ndarray) -> None: ...