UNPKG

1.25 kBTypeScriptView Raw
1import type { PresentArray } from '@glimmer/interfaces';
2import { LocatedWithOptionalSpan, LocatedWithSpan } from './location';
3import { SourceOffset, SourceSpan } from './span';
4export declare type HasSpan = SourceSpan | LocatedWithSpan | PresentArray<LocatedWithSpan>;
5export declare type MaybeHasSpan = SourceSpan | LocatedWithOptionalSpan | LocatedWithOptionalSpan[] | null;
6export declare type ToSourceOffset = number | SourceOffset;
7export declare class SpanList {
8 #private;
9 static range(span: PresentArray<HasSourceSpan>): SourceSpan;
10 static range(span: HasSourceSpan[], fallback: SourceSpan): SourceSpan;
11 constructor(span?: SourceSpan[]);
12 add(offset: SourceSpan): void;
13 getRangeOffset(fallback: SourceSpan): SourceSpan;
14}
15export declare type HasSourceSpan = {
16 loc: SourceSpan;
17} | SourceSpan | [HasSourceSpan, ...HasSourceSpan[]];
18export declare function loc(span: HasSourceSpan): SourceSpan;
19export declare type MaybeHasSourceSpan = {
20 loc: SourceSpan;
21} | SourceSpan | MaybeHasSourceSpan[];
22export declare function hasSpan(span: MaybeHasSourceSpan): span is HasSourceSpan;
23export declare function maybeLoc(location: MaybeHasSourceSpan, fallback: SourceSpan): SourceSpan;
24//# sourceMappingURL=span-list.d.ts.map
\No newline at end of file