import type { BigWigFeatureArrays, SummaryFeatureArrays } from './types.ts'; /** * Single-feature view into an `ArrayFeatureView`. Exposes a JBrowse-compatible * `Feature`-style `get(key)` interface and a `toJSON()` method. * * Valid keys for `get()`: `start`, `end`, `score`, `refName`, `source`, * `summary`, `minScore`, `maxScore`. */ export declare class BigWigFeature { private view; private i; constructor(view: ArrayFeatureView, i: number); /** @internal */ get(key: 'refName' | 'source'): string; /** @internal */ get(key: 'start' | 'end' | 'score'): number; /** @internal */ get(key: 'minScore' | 'maxScore'): number | undefined; /** @internal */ get(key: 'summary'): boolean; /** * Returns the value of `key` for this feature. * Valid keys: `start`, `end`, `score`, `refName`, `source`, `summary`, * `minScore`, `maxScore`. */ get(key: string): any; /** @internal */ id(): string; /** Returns a plain-object representation of this feature. */ toJSON(): { start: number; end: number; score: number; refName: string; source: string; uniqueId: string; summary: boolean; minScore: number | undefined; maxScore: number | undefined; }; } /** * Wraps a `BigWigFeatureArrays` or `SummaryFeatureArrays` result and exposes * a JBrowse-compatible `Feature`-style interface. Use `view.get(i, key)` to * read individual feature fields, or iterate with `view.length`. */ export declare class ArrayFeatureView { readonly starts: Int32Array; readonly ends: Int32Array; readonly scores: Float32Array; readonly minScores: Float32Array | undefined; readonly maxScores: Float32Array | undefined; readonly isSummary: boolean; readonly source: string; readonly refName: string; /** * @param arrays - typed arrays result from `getFeaturesAsArrays` * @param source - source identifier (e.g. track name) attached to each feature * @param refName - chromosome name attached to each feature */ constructor(arrays: BigWigFeatureArrays | SummaryFeatureArrays, source: string, refName: string); /** Number of features in this view. */ get length(): number; /** @internal */ start(i: number): number; /** @internal */ end(i: number): number; /** @internal */ score(i: number): number; /** @internal */ minScore(i: number): number | undefined; /** @internal */ maxScore(i: number): number | undefined; /** @internal */ id(i: number): string; /** @internal */ get(i: number, key: 'refName' | 'source'): string; /** @internal */ get(i: number, key: 'start' | 'end' | 'score'): number; /** @internal */ get(i: number, key: 'minScore' | 'maxScore'): number | undefined; /** @internal */ get(i: number, key: 'summary'): boolean; /** * Returns the value of `key` for feature at index `i`. * Valid keys: `start`, `end`, `score`, `refName`, `source`, `summary`, * `minScore`, `maxScore`. */ get(i: number, key: string): string | number | boolean | undefined; }