/** * Adds special flags for built in constructs in the language. * Only for use in the prelude. * Used to mark the `for` and `intersection_for` modules as loops, and their arguments are in fact variable declarations. */ export declare class IntrinsicAnnotation { static annotationTag: string; intrinsicType: string; constructor(contents: string[]); } /** * Renames this symbol to a diffrent name (which for example is a reserved keyword). * Used by the prelude to define `for` and `intersection_for` so that they can be resolved without errors. */ export declare class IntrinsicRenameAnnotation { static annotationTag: string; newName: string; constructor(contents: string[]); } /** * An annotation with a link to online documentation. * @todo Add links to other source-code locations */ export declare class SeeAnnotation { static annotationTag: string; link: string; constructor(contents: string[]); } /** * Describes a module or function parameter annotation. * It has the form of `@param name [... optional tags] description` * The tags either contain a name (`[positional]`) for binary tags or a name and a value (`[conflictsWith=abc,cba]`) */ export declare class ParamAnnotation { static annotationTag: string; link: string; description: string; tags: { [x: string]: any; positional: boolean; named: boolean; required: boolean; type: string[]; conflictsWith: string[]; possibleValues: string[]; }; constructor(contents: string[]); }