You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							48 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
	
	
							48 lines
						
					
					
						
							1.7 KiB
						
					
					
				| import type { AnySchema } from "../../types";
 | |
| import type { SchemaObjCxt } from "..";
 | |
| import { Code, Name } from "../codegen";
 | |
| import { Type } from "../util";
 | |
| import type { JSONType } from "../rules";
 | |
| export interface SubschemaContext {
 | |
|     schema: AnySchema;
 | |
|     schemaPath: Code;
 | |
|     errSchemaPath: string;
 | |
|     topSchemaRef?: Code;
 | |
|     errorPath?: Code;
 | |
|     dataLevel?: number;
 | |
|     dataTypes?: JSONType[];
 | |
|     data?: Name;
 | |
|     parentData?: Name;
 | |
|     parentDataProperty?: Code | number;
 | |
|     dataNames?: Name[];
 | |
|     dataPathArr?: (Code | number)[];
 | |
|     propertyName?: Name;
 | |
|     jtdDiscriminator?: string;
 | |
|     jtdMetadata?: boolean;
 | |
|     compositeRule?: true;
 | |
|     createErrors?: boolean;
 | |
|     allErrors?: boolean;
 | |
| }
 | |
| export declare type SubschemaArgs = Partial<{
 | |
|     keyword: string;
 | |
|     schemaProp: string | number;
 | |
|     schema: AnySchema;
 | |
|     schemaPath: Code;
 | |
|     errSchemaPath: string;
 | |
|     topSchemaRef: Code;
 | |
|     data: Name | Code;
 | |
|     dataProp: Code | string | number;
 | |
|     dataTypes: JSONType[];
 | |
|     definedProperties: Set<string>;
 | |
|     propertyName: Name;
 | |
|     dataPropType: Type;
 | |
|     jtdDiscriminator: string;
 | |
|     jtdMetadata: boolean;
 | |
|     compositeRule: true;
 | |
|     createErrors: boolean;
 | |
|     allErrors: boolean;
 | |
| }>;
 | |
| export declare function getSubschema(it: SchemaObjCxt, { keyword, schemaProp, schema, schemaPath, errSchemaPath, topSchemaRef }: SubschemaArgs): SubschemaContext;
 | |
| export declare function extendSubschemaData(subschema: SubschemaContext, it: SchemaObjCxt, { dataProp, dataPropType: dpType, data, dataTypes, propertyName }: SubschemaArgs): void;
 | |
| export declare function extendSubschemaMode(subschema: SubschemaContext, { jtdDiscriminator, jtdMetadata, compositeRule, createErrors, allErrors }: SubschemaArgs): void;
 |