* struct containing the 3 stacks used in non-recursive parsing,
  * and the token and value for scalars that need to be preserved
  * across calls.
+ *
+ * typedef appears in jsonapi.h
  */
-typedef struct JsonParserStack
+struct JsonParserStack
 {
        int                     stack_size;
        char       *prediction;
        bool       *fnull;
        JsonTokenType scalar_tok;
        char       *scalar_val;
-} JsonParserStack;
+};
 
 /*
  * struct containing state used when there is a possible partial token at the
  * end of a json chunk when we are doing incremental parsing.
+ *
+ * typedef appears in jsonapi.h
  */
-typedef struct JsonIncrementalState
+struct JsonIncrementalState
 {
        bool            is_last_chunk;
        bool            partial_completed;
        StringInfoData partial_token;
-} JsonIncrementalState;
+};
 
 /*
  * constants and macros used in the nonrecursive parser
 
        char       *manifest_checksum;
 } JsonManifestParseState;
 
-typedef struct JsonManifestParseIncrementalState
+/* typedef appears in parse_manifest.h */
+struct JsonManifestParseIncrementalState
 {
        JsonLexContext lex;
        JsonSemAction sem;
        pg_cryptohash_ctx *manifest_ctx;
-} JsonManifestParseIncrementalState;
+};
 
 static JsonParseErrorType json_manifest_object_start(void *state);
 static JsonParseErrorType json_manifest_object_end(void *state);