87 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { Document } from './index'
 | |
| import { CST } from './parse-cst'
 | |
| import { AST, Pair, Scalar, Schema } from './types'
 | |
| 
 | |
| export function findPair(items: any[], key: Scalar | any): Pair | undefined
 | |
| 
 | |
| export function parseMap(doc: Document, cst: CST.Map): AST.BlockMap
 | |
| export function parseMap(doc: Document, cst: CST.FlowMap): AST.FlowMap
 | |
| export function parseSeq(doc: Document, cst: CST.Seq): AST.BlockSeq
 | |
| export function parseSeq(doc: Document, cst: CST.FlowSeq): AST.FlowSeq
 | |
| 
 | |
| export function stringifyNumber(item: Scalar): string
 | |
| export function stringifyString(
 | |
|   item: Scalar,
 | |
|   ctx: Schema.StringifyContext,
 | |
|   onComment?: () => void,
 | |
|   onChompKeep?: () => void
 | |
| ): string
 | |
| 
 | |
| export function toJSON(
 | |
|   value: any,
 | |
|   arg?: any,
 | |
|   ctx?: Schema.CreateNodeContext
 | |
| ): any
 | |
| 
 | |
| export enum Type {
 | |
|   ALIAS = 'ALIAS',
 | |
|   BLANK_LINE = 'BLANK_LINE',
 | |
|   BLOCK_FOLDED = 'BLOCK_FOLDED',
 | |
|   BLOCK_LITERAL = 'BLOCK_LITERAL',
 | |
|   COMMENT = 'COMMENT',
 | |
|   DIRECTIVE = 'DIRECTIVE',
 | |
|   DOCUMENT = 'DOCUMENT',
 | |
|   FLOW_MAP = 'FLOW_MAP',
 | |
|   FLOW_SEQ = 'FLOW_SEQ',
 | |
|   MAP = 'MAP',
 | |
|   MAP_KEY = 'MAP_KEY',
 | |
|   MAP_VALUE = 'MAP_VALUE',
 | |
|   PLAIN = 'PLAIN',
 | |
|   QUOTE_DOUBLE = 'QUOTE_DOUBLE',
 | |
|   QUOTE_SINGLE = 'QUOTE_SINGLE',
 | |
|   SEQ = 'SEQ',
 | |
|   SEQ_ITEM = 'SEQ_ITEM'
 | |
| }
 | |
| 
 | |
| interface LinePos {
 | |
|   line: number
 | |
|   col: number
 | |
| }
 | |
| 
 | |
| export class YAMLError extends Error {
 | |
|   name:
 | |
|     | 'YAMLReferenceError'
 | |
|     | 'YAMLSemanticError'
 | |
|     | 'YAMLSyntaxError'
 | |
|     | 'YAMLWarning'
 | |
|   message: string
 | |
|   source?: CST.Node
 | |
| 
 | |
|   nodeType?: Type
 | |
|   range?: CST.Range
 | |
|   linePos?: { start: LinePos; end: LinePos }
 | |
| 
 | |
|   /**
 | |
|    * Drops `source` and adds `nodeType`, `range` and `linePos`, as well as
 | |
|    * adding details to `message`. Run automatically for document errors if
 | |
|    * the `prettyErrors` option is set.
 | |
|    */
 | |
|   makePretty(): void
 | |
| }
 | |
| 
 | |
| export class YAMLReferenceError extends YAMLError {
 | |
|   name: 'YAMLReferenceError'
 | |
| }
 | |
| 
 | |
| export class YAMLSemanticError extends YAMLError {
 | |
|   name: 'YAMLSemanticError'
 | |
| }
 | |
| 
 | |
| export class YAMLSyntaxError extends YAMLError {
 | |
|   name: 'YAMLSyntaxError'
 | |
| }
 | |
| 
 | |
| export class YAMLWarning extends YAMLError {
 | |
|   name: 'YAMLWarning'
 | |
| }
 |