// This file was generated by proto-gen. Do not edit by hand. syntax = "proto3"; package github.semantic.typescriptdiff; import "types.proto"; option java_package = "com.github.semantic.typescriptdiff"; option go_package = "github.com/semantic/typescriptdiff;typescript"; message TypeScriptDiff { oneof diff { Merge merge = 1; Delete delete = 2; Insert insert = 3; Replace replace = 4; } message Merge { TypeScriptSyntax syntax = 1; } message Delete { TypeScriptSyntax before = 1; } message Insert { TypeScriptSyntax after = 1; } message Replace { TypeScriptSyntax before = 1; TypeScriptSyntax after = 2; } } message TypeScriptSyntax { oneof syntax { Comment comment = 1; HashBang hashBang = 2; Class class = 3; Function function = 4; Method method = 5; MethodSignature methodSignature = 6; InterfaceDeclaration interfaceDeclaration = 7; PublicFieldDefinition publicFieldDefinition = 8; VariableDeclaration variableDeclaration = 9; TypeAlias typeAlias = 10; Plus plus = 11; Minus minus = 12; Times times = 13; DividedBy dividedBy = 14; Modulo modulo = 15; Power power = 16; Negate negate = 17; FloorDivision floorDivision = 18; BAnd bAnd = 19; BOr bOr = 20; BXOr bXOr = 21; LShift lShift = 22; RShift rShift = 23; UnsignedRShift unsignedRShift = 24; Complement complement = 25; And and = 26; Not not = 27; Or or = 28; XOr xOr = 29; Call call = 30; Cast cast = 31; LessThan lessThan = 32; LessThanEqual lessThanEqual = 33; GreaterThan greaterThan = 34; GreaterThanEqual greaterThanEqual = 35; Equal equal = 36; StrictEqual strictEqual = 37; Comparison comparison = 38; Enumeration enumeration = 39; MemberAccess memberAccess = 40; NonNullExpression nonNullExpression = 41; ScopeResolution scopeResolution = 42; SequenceExpression sequenceExpression = 43; Subscript subscript = 44; Member member = 45; Delete delete = 46; Void void = 47; Typeof typeof = 48; InstanceOf instanceOf = 49; New new = 50; Await await = 51; This this = 52; Array array = 53; Boolean boolean = 54; Float float = 55; Hash hash = 56; Integer integer = 57; KeyValue keyValue = 58; Null null = 59; String string = 60; TextElement textElement = 61; Regex regex = 62; Assignment assignment = 63; Break break = 64; Catch catch = 65; Continue continue = 66; DoWhile doWhile = 67; Else else = 68; Finally finally = 69; For for = 70; ForEach forEach = 71; If if = 72; Match match = 73; Pattern pattern = 74; Retry retry = 75; Return return = 76; ScopeEntry scopeEntry = 77; ScopeExit scopeExit = 78; Statements statements = 79; Throw throw = 80; Try try = 81; While while = 82; Yield yield = 83; AccessibilityModifier accessibilityModifier = 84; Empty empty = 85; Error error = 86; Identifier identifier = 87; Context context = 88; Readonly readonly = 89; TypeParameters typeParameters = 90; TypeParameter typeParameter = 91; Constraint constraint = 92; ParenthesizedType parenthesizedType = 93; DefaultType defaultType = 94; PredefinedType predefinedType = 95; TypeIdentifier typeIdentifier = 96; NestedIdentifier nestedIdentifier = 97; NestedTypeIdentifier nestedTypeIdentifier = 98; GenericType genericType = 99; TypeArguments typeArguments = 100; TypePredicate typePredicate = 101; CallSignature callSignature = 102; ConstructSignature constructSignature = 103; ArrayType arrayType = 104; LookupType lookupType = 105; FlowMaybeType flowMaybeType = 106; TypeQuery typeQuery = 107; IndexTypeQuery indexTypeQuery = 108; ThisType thisType = 109; ExistentialType existentialType = 110; AbstractMethodSignature abstractMethodSignature = 111; IndexSignature indexSignature = 112; ObjectType objectType = 113; LiteralType literalType = 114; Union union = 115; Intersection intersection = 116; Module module = 117; InternalModule internalModule = 118; FunctionType functionType = 119; Tuple tuple = 120; Constructor constructor = 121; TypeAssertion typeAssertion = 122; ImportAlias importAlias = 123; Debugger debugger = 124; ShorthandPropertyIdentifier shorthandPropertyIdentifier = 125; Super super = 126; Undefined undefined = 127; ClassHeritage classHeritage = 128; AbstractClass abstractClass = 129; ImplementsClause implementsClause = 130; JsxElement jsxElement = 131; JsxSelfClosingElement jsxSelfClosingElement = 132; JsxOpeningElement jsxOpeningElement = 133; JsxText jsxText = 134; JsxClosingElement jsxClosingElement = 135; JsxExpression jsxExpression = 136; JsxAttribute jsxAttribute = 137; JsxFragment jsxFragment = 138; JsxNamespaceName jsxNamespaceName = 139; OptionalParameter optionalParameter = 140; RequiredParameter requiredParameter = 141; RestParameter restParameter = 142; PropertySignature propertySignature = 143; AmbientDeclaration ambientDeclaration = 144; EnumDeclaration enumDeclaration = 145; ExtendsClause extendsClause = 146; AmbientFunction ambientFunction = 147; ImportRequireClause importRequireClause = 148; ImportClause importClause = 149; LabeledStatement labeledStatement = 150; Annotation annotation = 151; With with = 152; ForOf forOf = 153; Update update = 154; ComputedPropertyName computedPropertyName = 155; Decorator decorator = 156; Import import = 157; QualifiedAliasedImport qualifiedAliasedImport = 158; SideEffectImport sideEffectImport = 159; DefaultExport defaultExport = 160; QualifiedExport qualifiedExport = 161; QualifiedExportFrom qualifiedExportFrom = 162; JavaScriptRequire javaScriptRequire = 163; List list = 164; StatementBlock statementBlock = 165; } } message Comment { string commentContent = 1; } message HashBang { string value = 1; } message Class { repeated TypeScriptDiff classContext = 1; TypeScriptDiff classIdentifier = 2; repeated TypeScriptDiff classSuperclasses = 3; TypeScriptDiff classBody = 4; } message Function { repeated TypeScriptDiff functionContext = 1; TypeScriptDiff functionName = 2; repeated TypeScriptDiff functionParameters = 3; TypeScriptDiff functionBody = 4; } message Method { repeated TypeScriptDiff methodContext = 1; TypeScriptDiff methodReceiver = 2; TypeScriptDiff methodName = 3; repeated TypeScriptDiff methodParameters = 4; TypeScriptDiff methodBody = 5; } message MethodSignature { repeated TypeScriptDiff methodSignatureContext = 1; TypeScriptDiff methodSignatureName = 2; repeated TypeScriptDiff methodSignatureParameters = 3; } message InterfaceDeclaration { repeated TypeScriptDiff interfaceDeclarationContext = 1; TypeScriptDiff interfaceDeclarationIdentifier = 2; repeated TypeScriptDiff interfaceDeclarationSuperInterfaces = 3; TypeScriptDiff interfaceDeclarationBody = 4; } message PublicFieldDefinition { repeated TypeScriptDiff publicFieldContext = 1; TypeScriptDiff publicFieldPropertyName = 2; TypeScriptDiff publicFieldValue = 3; } message VariableDeclaration { repeated TypeScriptDiff variableDeclarations = 1; } message TypeAlias { repeated TypeScriptDiff typeAliasContext = 1; TypeScriptDiff typeAliasIdentifier = 2; TypeScriptDiff typeAliasKind = 3; } message Plus { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Minus { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Times { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message DividedBy { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Modulo { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Power { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Negate { TypeScriptDiff value = 1; } message FloorDivision { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message BAnd { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message BOr { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message BXOr { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message LShift { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message RShift { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message UnsignedRShift { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Complement { TypeScriptDiff value = 1; } message And { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Not { TypeScriptDiff value = 1; } message Or { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message XOr { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Call { repeated TypeScriptDiff callContext = 1; TypeScriptDiff callFunction = 2; repeated TypeScriptDiff callParams = 3; TypeScriptDiff callBlock = 4; } message Cast { TypeScriptDiff castSubject = 1; TypeScriptDiff castType = 2; } message LessThan { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message LessThanEqual { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message GreaterThan { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message GreaterThanEqual { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Equal { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message StrictEqual { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Comparison { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Enumeration { TypeScriptDiff enumerationStart = 1; TypeScriptDiff enumerationEnd = 2; TypeScriptDiff enumerationStep = 3; } message MemberAccess { TypeScriptDiff lhs = 1; bytes rhs = 2; } message NonNullExpression { TypeScriptDiff nonNullExpression = 1; } message ScopeResolution { repeated TypeScriptDiff scopes = 1; } message SequenceExpression { TypeScriptDiff firstExpression = 1; TypeScriptDiff secondExpression = 2; } message Subscript { TypeScriptDiff lhs = 1; repeated TypeScriptDiff rhs = 2; } message Member { TypeScriptDiff lhs = 1; TypeScriptDiff rhs = 2; } message Delete { TypeScriptDiff value = 1; } message Void { TypeScriptDiff value = 1; } message Typeof { TypeScriptDiff value = 1; } message InstanceOf { TypeScriptDiff instanceOfSubject = 1; TypeScriptDiff instanceOfObject = 2; } message New { repeated TypeScriptDiff newSubject = 1; } message Await { TypeScriptDiff awaitSubject = 1; } message This { } message Array { repeated TypeScriptDiff arrayElements = 1; } message Boolean { bool booleanContent = 1; } message Float { string floatContent = 1; } message Hash { repeated TypeScriptDiff hashElements = 1; } message Integer { string integerContent = 1; } message KeyValue { TypeScriptDiff key = 1; TypeScriptDiff value = 2; } message Null { } message String { repeated TypeScriptDiff stringElements = 1; } message TextElement { string textElementContent = 1; } message Regex { string regexContent = 1; } message Assignment { repeated TypeScriptDiff assignmentContext = 1; TypeScriptDiff assignmentTarget = 2; TypeScriptDiff assignmentValue = 3; } message Break { TypeScriptDiff value = 1; } message Catch { TypeScriptDiff catchException = 1; TypeScriptDiff catchBody = 2; } message Continue { TypeScriptDiff value = 1; } message DoWhile { TypeScriptDiff doWhileCondition = 1; TypeScriptDiff doWhileBody = 2; } message Else { TypeScriptDiff elseCondition = 1; TypeScriptDiff elseBody = 2; } message Finally { TypeScriptDiff value = 1; } message For { TypeScriptDiff forBefore = 1; TypeScriptDiff forCondition = 2; TypeScriptDiff forStep = 3; TypeScriptDiff forBody = 4; } message ForEach { TypeScriptDiff forEachBinding = 1; TypeScriptDiff forEachSubject = 2; TypeScriptDiff forEachBody = 3; } message If { TypeScriptDiff ifCondition = 1; TypeScriptDiff ifThenBody = 2; TypeScriptDiff ifElseBody = 3; } message Match { TypeScriptDiff matchSubject = 1; TypeScriptDiff matchPatterns = 2; } message Pattern { TypeScriptDiff value = 1; TypeScriptDiff patternBody = 2; } message Retry { TypeScriptDiff value = 1; } message Return { TypeScriptDiff value = 1; } message ScopeEntry { repeated TypeScriptDiff terms = 1; } message ScopeExit { repeated TypeScriptDiff terms = 1; } message Statements { repeated TypeScriptDiff statements = 1; } message Throw { TypeScriptDiff value = 1; } message Try { TypeScriptDiff tryBody = 1; repeated TypeScriptDiff tryCatch = 2; } message While { TypeScriptDiff whileCondition = 1; TypeScriptDiff whileBody = 2; } message Yield { TypeScriptDiff value = 1; } message AccessibilityModifier { string contents = 1; } message Empty { } message Error { repeated ErrorSite errorCallStack = 1; repeated string errorExpected = 2; string errorActual = 3; repeated TypeScriptDiff errorChildren = 4; } message Identifier { bytes name = 1; } message Context { repeated TypeScriptDiff contextTerms = 1; TypeScriptDiff contextSubject = 2; } message Readonly { } message TypeParameters { repeated TypeScriptDiff terms = 1; } message TypeParameter { TypeScriptDiff typeParameter = 1; TypeScriptDiff typeParameterConstraint = 2; TypeScriptDiff typeParameterDefaultType = 3; } message Constraint { TypeScriptDiff constraintType = 1; } message ParenthesizedType { TypeScriptDiff parenthesizedType = 1; } message DefaultType { TypeScriptDiff defaultType = 1; } message PredefinedType { string predefinedType = 1; } message TypeIdentifier { string contents = 1; } message NestedIdentifier { TypeScriptDiff left = 1; TypeScriptDiff right = 2; } message NestedTypeIdentifier { TypeScriptDiff left = 1; TypeScriptDiff right = 2; } message GenericType { TypeScriptDiff genericTypeIdentifier = 1; TypeScriptDiff genericTypeArguments = 2; } message TypeArguments { repeated TypeScriptDiff typeArguments = 1; } message TypePredicate { TypeScriptDiff typePredicateIdentifier = 1; TypeScriptDiff typePredicateType = 2; } message CallSignature { TypeScriptDiff callSignatureTypeParameters = 1; repeated TypeScriptDiff callSignatureParameters = 2; TypeScriptDiff callSignatureType = 3; } message ConstructSignature { TypeScriptDiff constructSignatureTypeParameters = 1; repeated TypeScriptDiff constructSignatureParameters = 2; TypeScriptDiff constructSignatureType = 3; } message ArrayType { TypeScriptDiff arrayType = 1; } message LookupType { TypeScriptDiff lookupTypeIdentifier = 1; TypeScriptDiff lookupTypeKey = 2; } message FlowMaybeType { TypeScriptDiff flowMaybeType = 1; } message TypeQuery { TypeScriptDiff typeQuerySubject = 1; } message IndexTypeQuery { TypeScriptDiff indexTypeQuerySubject = 1; } message ThisType { string contents = 1; } message ExistentialType { string contents = 1; } message AbstractMethodSignature { repeated TypeScriptDiff abstractMethodSignatureContext = 1; TypeScriptDiff abstractMethodSignatureName = 2; repeated TypeScriptDiff abstractMethodSignatureParameters = 3; } message IndexSignature { TypeScriptDiff indexSignatureSubject = 1; TypeScriptDiff indexSignatureType = 2; } message ObjectType { repeated TypeScriptDiff objectTypeElements = 1; } message LiteralType { TypeScriptDiff literalTypeSubject = 1; } message Union { TypeScriptDiff unionLeft = 1; TypeScriptDiff unionRight = 2; } message Intersection { TypeScriptDiff intersectionLeft = 1; TypeScriptDiff intersectionRight = 2; } message Module { TypeScriptDiff moduleIdentifier = 1; repeated TypeScriptDiff moduleStatements = 2; } message InternalModule { TypeScriptDiff internalModuleIdentifier = 1; repeated TypeScriptDiff internalModuleStatements = 2; } message FunctionType { TypeScriptDiff functionTypeParameters = 1; repeated TypeScriptDiff functionFormalParameters = 2; TypeScriptDiff functionType = 3; } message Tuple { repeated TypeScriptDiff tupleElements = 1; } message Constructor { TypeScriptDiff constructorTypeParameters = 1; repeated TypeScriptDiff constructorFormalParameters = 2; TypeScriptDiff constructorType = 3; } message TypeAssertion { TypeScriptDiff typeAssertionParameters = 1; TypeScriptDiff typeAssertionExpression = 2; } message ImportAlias { TypeScriptDiff importAliasSubject = 1; TypeScriptDiff importAlias = 2; } message Debugger { } message ShorthandPropertyIdentifier { string contents = 1; } message Super { } message Undefined { } message ClassHeritage { TypeScriptDiff classHeritageExtendsClause = 1; TypeScriptDiff implementsClause = 2; } message AbstractClass { TypeScriptDiff abstractClassIdentifier = 1; TypeScriptDiff abstractClassTypeParameters = 2; repeated TypeScriptDiff classHeritage = 3; TypeScriptDiff classBody = 4; } message ImplementsClause { repeated TypeScriptDiff implementsClauseTypes = 1; } message JsxElement { TypeScriptDiff jsxOpeningElement = 1; repeated TypeScriptDiff jsxElements = 2; TypeScriptDiff jsxClosingElement = 3; } message JsxSelfClosingElement { TypeScriptDiff jsxSelfClosingElementIdentifier = 1; repeated TypeScriptDiff jsxSelfClosingElementAttributes = 2; } message JsxOpeningElement { TypeScriptDiff jsxOpeningElementIdentifier = 1; repeated TypeScriptDiff jsxAttributes = 2; } message JsxText { string contents = 1; } message JsxClosingElement { TypeScriptDiff jsxClosingElementIdentifier = 1; } message JsxExpression { TypeScriptDiff jsxExpression = 1; } message JsxAttribute { TypeScriptDiff jsxAttributeTarget = 1; TypeScriptDiff jsxAttributeValue = 2; } message JsxFragment { repeated TypeScriptDiff terms = 1; } message JsxNamespaceName { TypeScriptDiff left = 1; TypeScriptDiff right = 2; } message OptionalParameter { repeated TypeScriptDiff optionalParameterContext = 1; TypeScriptDiff optionalParameterSubject = 2; } message RequiredParameter { repeated TypeScriptDiff requiredParameterContext = 1; TypeScriptDiff requiredParameterSubject = 2; TypeScriptDiff requiredParameterValue = 3; } message RestParameter { repeated TypeScriptDiff restParameterContext = 1; TypeScriptDiff restParameterSubject = 2; } message PropertySignature { repeated TypeScriptDiff modifiers = 1; TypeScriptDiff propertySignaturePropertyName = 2; } message AmbientDeclaration { TypeScriptDiff ambientDeclarationBody = 1; } message EnumDeclaration { TypeScriptDiff enumDeclarationIdentifier = 1; repeated TypeScriptDiff enumDeclarationBody = 2; } message ExtendsClause { repeated TypeScriptDiff extendsClauses = 1; } message AmbientFunction { repeated TypeScriptDiff ambientFunctionContext = 1; TypeScriptDiff ambientFunctionIdentifier = 2; repeated TypeScriptDiff ambientFunctionParameters = 3; } message ImportRequireClause { TypeScriptDiff importRequireIdentifier = 1; TypeScriptDiff importRequireSubject = 2; } message ImportClause { repeated TypeScriptDiff importClauseElements = 1; } message LabeledStatement { TypeScriptDiff labeledStatementIdentifier = 1; TypeScriptDiff labeledStatementSubject = 2; } message Annotation { TypeScriptDiff annotationType = 1; } message With { TypeScriptDiff withExpression = 1; TypeScriptDiff withBody = 2; } message ForOf { TypeScriptDiff forOfBinding = 1; TypeScriptDiff forOfSubject = 2; TypeScriptDiff forOfBody = 3; } message Update { TypeScriptDiff updateSubject = 1; } message ComputedPropertyName { TypeScriptDiff propertyName = 1; } message Decorator { TypeScriptDiff decoratorTerm = 1; } message Import { repeated Alias importSymbols = 1; ImportPath importFrom = 2; } message QualifiedAliasedImport { TypeScriptDiff qualifiedAliasedImportAlias = 1; ImportPath qualifiedAliasedImportFrom = 2; } message SideEffectImport { ImportPath sideEffectImportFrom = 1; } message DefaultExport { TypeScriptDiff defaultExport = 1; } message QualifiedExport { repeated Alias qualifiedExportSymbols = 1; } message QualifiedExportFrom { ImportPath qualifiedExportFrom = 1; repeated Alias qualifiedExportFromSymbols = 2; } message JavaScriptRequire { TypeScriptDiff javascriptRequireIden = 1; ImportPath javascriptRequireFrom = 2; } message List { repeated TypeScriptDiff listContent = 1; } message StatementBlock { repeated TypeScriptDiff statements = 1; } message Alias { bytes aliasValue = 1; bytes aliasName = 2; } message ImportPath { string unPath = 1; IsRelative pathIsRelative = 2; } enum IsRelative { Unknown = 0; Relative = 1; NonRelative = 2; }