import { Label } from '../types'; /** * Safe string literal parser that never throws. Falls back to returning * the original text for unrecognised formats. */ export declare function parseStringLiteralSafe(text: string): string; export declare type Situation = { type: 'IN_FUNCTION'; } | { type: 'AT_ROOT'; } | { type: 'EMPTY'; } | { type: 'IN_DURATION'; } | { type: 'IN_WITH_BODY'; } | { type: 'IN_LABEL_SELECTOR_NO_LABEL_NAME'; metricName?: string; otherLabels: Label[]; hasOperator: boolean; } | { type: 'IN_GROUPING'; metricName: string; otherLabels: Label[]; } | { type: 'IN_LABEL_SELECTOR_WITH_LABEL_NAME'; metricName?: string; labelName: string; betweenQuotes: boolean; otherLabels: Label[]; valueStartPos: number; }; export declare function getSituation(text: string, pos: number): Situation | null;