UNPKG

1.91 kBTypeScriptView Raw
1import { Range } from 'vscode-languageserver-types';
2/**
3 * Heredoc represents a here-document that has been embedded in a
4 * Dockerfile.
5 *
6 * This API is experimental and subject to change.
7 */
8export declare class Heredoc {
9 private readonly startRange;
10 private readonly name;
11 private readonly nameRange;
12 private readonly contentRange;
13 private readonly endRange;
14 constructor(startRange: Range, name: string, nameRange: Range, contentRange: Range, endRange: Range);
15 /**
16 * Returns the name of the here-document.
17 *
18 * This API is experimental and subject to change.
19 */
20 getName(): string;
21 /**
22 * Returns the range of the start operator and the name. If the
23 * here-document is initialized with <<EOT then the start range would
24 * encompass all five characters.
25 *
26 * This API is experimental and subject to change.
27 */
28 getStartRange(): Range;
29 /**
30 * Returns the range of this here-document's name that is declared at
31 * the beginning of the here-document with the operator. If the
32 * here-document is initialized with <<EOT then the name range would
33 * encompass the latter three "EOT" characters.
34 *
35 * This API is experimental and subject to change.
36 */
37 getNameRange(): Range;
38 /**
39 * Returns the range of the content of this here-document. This may
40 * be null if the here-document has no content because:
41 * - the start range is the only thing that was declared
42 * - the end range was declared immediately and there is no content
43 *
44 * This API is experimental and subject to change.
45 */
46 getContentRange(): Range | null;
47 /**
48 * Returns the range of the here-document's name on a line that
49 * represents the end of the here-document.
50 *
51 * This API is experimental and subject to change.
52 */
53 getDelimiterRange(): Range | null;
54}