From e19ce8a5726a05fe4c1356c1764da71734ad6747 Mon Sep 17 00:00:00 2001 From: Greg Richardson Date: Tue, 3 Jun 2025 10:40:50 -0600 Subject: [PATCH] feat: export ast types --- packages/pg-parser/package.json | 15 +++++++++++++++ packages/pg-parser/src/index.ts | 2 +- packages/pg-parser/src/pg-parser.test.ts | 2 +- packages/pg-parser/src/pg-parser.ts | 4 ++-- packages/pg-parser/src/types/15.ts | 5 +++++ packages/pg-parser/src/types/16.ts | 5 +++++ packages/pg-parser/src/types/17.ts | 5 +++++ .../pg-parser/src/{types.ts => types/index.ts} | 16 ++++++++-------- packages/pg-parser/src/util.ts | 2 +- packages/pg-parser/tsup.config.ts | 7 ++++++- 10 files changed, 49 insertions(+), 14 deletions(-) create mode 100644 packages/pg-parser/src/types/15.ts create mode 100644 packages/pg-parser/src/types/16.ts create mode 100644 packages/pg-parser/src/types/17.ts rename packages/pg-parser/src/{types.ts => types/index.ts} (59%) diff --git a/packages/pg-parser/package.json b/packages/pg-parser/package.json index edc3d59..0d61142 100644 --- a/packages/pg-parser/package.json +++ b/packages/pg-parser/package.json @@ -32,6 +32,21 @@ "import": "./dist/index.js", "types": "./dist/index.d.ts", "default": "./dist/index.cjs" + }, + "./15/types": { + "import": "./dist/types/15.js", + "types": "./dist/types/15.ts", + "default": "./dist/types/15.cjs" + }, + "./16/types": { + "import": "./dist/types/16.js", + "types": "./dist/types/16.ts", + "default": "./dist/types/16.cjs" + }, + "./17/types": { + "import": "./dist/types/17.js", + "types": "./dist/types/17.ts", + "default": "./dist/types/17.cjs" } }, "dependencies": { diff --git a/packages/pg-parser/src/index.ts b/packages/pg-parser/src/index.ts index 57c876f..38972b7 100644 --- a/packages/pg-parser/src/index.ts +++ b/packages/pg-parser/src/index.ts @@ -10,7 +10,7 @@ export type { WrappedParseError, WrappedParseResult, WrappedParseSuccess, -} from './types.js'; +} from './types/index.js'; export { getSupportedVersions, isParseResultVersion, diff --git a/packages/pg-parser/src/pg-parser.test.ts b/packages/pg-parser/src/pg-parser.test.ts index 31691fa..288acfd 100644 --- a/packages/pg-parser/src/pg-parser.test.ts +++ b/packages/pg-parser/src/pg-parser.test.ts @@ -1,7 +1,7 @@ import { stripIndent } from 'common-tags'; import { describe, expect, it } from 'vitest'; import { PgParser } from './pg-parser.js'; -import type { ParseResult } from './types.js'; +import type { ParseResult } from './types/index.js'; import { isParseResultVersion, unwrapParseResult } from './util.js'; describe('pg-parser', () => { diff --git a/packages/pg-parser/src/pg-parser.ts b/packages/pg-parser/src/pg-parser.ts index 0414a28..08e5449 100644 --- a/packages/pg-parser/src/pg-parser.ts +++ b/packages/pg-parser/src/pg-parser.ts @@ -6,9 +6,9 @@ import { import type { MainModule, PgParserModule, - WrappedParseResult, SupportedVersion, -} from './types.js'; + WrappedParseResult, +} from './types/index.js'; import { isSupportedVersion } from './util.js'; export type PgParserOptions = { diff --git a/packages/pg-parser/src/types/15.ts b/packages/pg-parser/src/types/15.ts new file mode 100644 index 0000000..776b376 --- /dev/null +++ b/packages/pg-parser/src/types/15.ts @@ -0,0 +1,5 @@ +import type { ParseResult } from '../../wasm/15/pg-parser-types.js'; +export type ParseResult15 = ParseResult; + +export * from '../../wasm/15/pg-parser-types.js'; +export * from '../../wasm/15/pg-parser-enums.js'; diff --git a/packages/pg-parser/src/types/16.ts b/packages/pg-parser/src/types/16.ts new file mode 100644 index 0000000..453fa3d --- /dev/null +++ b/packages/pg-parser/src/types/16.ts @@ -0,0 +1,5 @@ +import type { ParseResult } from '../../wasm/16/pg-parser-types.js'; +export type ParseResult16 = ParseResult; + +export * from '../../wasm/16/pg-parser-types.js'; +export * from '../../wasm/16/pg-parser-enums.js'; diff --git a/packages/pg-parser/src/types/17.ts b/packages/pg-parser/src/types/17.ts new file mode 100644 index 0000000..f054557 --- /dev/null +++ b/packages/pg-parser/src/types/17.ts @@ -0,0 +1,5 @@ +import type { ParseResult } from '../../wasm/17/pg-parser-types.js'; +export type ParseResult17 = ParseResult; + +export * from '../../wasm/17/pg-parser-types.js'; +export * from '../../wasm/17/pg-parser-enums.js'; diff --git a/packages/pg-parser/src/types.ts b/packages/pg-parser/src/types/index.ts similarity index 59% rename from packages/pg-parser/src/types.ts rename to packages/pg-parser/src/types/index.ts index 5c98b38..fd686bd 100644 --- a/packages/pg-parser/src/types.ts +++ b/packages/pg-parser/src/types/index.ts @@ -1,13 +1,13 @@ -import type { MainModule as MainModule15 } from '../wasm/15/pg-parser.js'; -import type { MainModule as MainModule16 } from '../wasm/16/pg-parser.js'; -import type { MainModule as MainModule17 } from '../wasm/17/pg-parser.js'; +import type { MainModule as MainModule15 } from '../../wasm/15/pg-parser.js'; +import type { MainModule as MainModule16 } from '../../wasm/16/pg-parser.js'; +import type { MainModule as MainModule17 } from '../../wasm/17/pg-parser.js'; -import type { ParseResult as ParseResult15 } from '../wasm/15/pg-parser-types.js'; -import type { ParseResult as ParseResult16 } from '../wasm/16/pg-parser-types.js'; -import type { ParseResult as ParseResult17 } from '../wasm/17/pg-parser-types.js'; +import type { ParseResult15 } from './15.js'; +import type { ParseResult16 } from './16.js'; +import type { ParseResult17 } from './17.js'; -import type { SUPPORTED_VERSIONS } from './constants.js'; -import type { ParseError } from './errors.js'; +import type { SUPPORTED_VERSIONS } from '../constants.js'; +import type { ParseError } from '../errors.js'; export type SupportedVersion = (typeof SUPPORTED_VERSIONS)[number]; diff --git a/packages/pg-parser/src/util.ts b/packages/pg-parser/src/util.ts index 30402d1..e625ab1 100644 --- a/packages/pg-parser/src/util.ts +++ b/packages/pg-parser/src/util.ts @@ -3,7 +3,7 @@ import type { ParseResult, SupportedVersion, WrappedParseResult, -} from './types.js'; +} from './types/index.js'; /** * Unwraps a `WrappedParseResult` by throwing an error if the result diff --git a/packages/pg-parser/tsup.config.ts b/packages/pg-parser/tsup.config.ts index 71eb936..7b2cee5 100644 --- a/packages/pg-parser/tsup.config.ts +++ b/packages/pg-parser/tsup.config.ts @@ -2,7 +2,12 @@ import { defineConfig } from 'tsup'; export default defineConfig([ { - entry: ['src/index.ts'], + entry: [ + 'src/index.ts', + 'src/types/15.ts', + 'src/types/16.ts', + 'src/types/17.ts', + ], format: ['cjs', 'esm'], outDir: 'dist', sourcemap: true,