import { type FanItemsContinuation } from '../types/Fan.js'; import { type ImageFormat } from '../types/Image.js'; type PageDataKey = 'collection' | 'wishlist' | 'following_genres' | 'following_bands'; type ContinuationDataKey = 'items' | 'followeers'; interface FanItemsParseParams extends FanItemParseOptions { dataKey: PageDataKey | ContinuationDataKey; parseItemFn: (data: any, opts: FanItemParseOptions, tracklists: any) => T; } export interface FanPageItemsResult { items: T[]; total: number; continuation: FanItemsContinuation | null; } export interface FanContinuationItemsResult { items: T[]; continuation: FanItemsContinuation | null; } export interface FanItemParseOptions { imageBaseUrl: string; imageFormat: ImageFormat | null; } export default abstract class FanItemsBaseParser { protected static parsePageItems(html: string, params: FanItemsParseParams): FanPageItemsResult>; protected static parseContinuationItems(json: any, continuation: FanItemsContinuation, params: FanItemsParseParams): FanContinuationItemsResult>; } export {}; //# sourceMappingURL=FanItemsBaseParser.d.ts.map