/** * GraphQL-based export orchestrator. * * This is a standalone GraphQL export flow that mirrors export-migrations.ts * but fetches all data via GraphQL queries instead of direct SQL. * * Per Dan's guidance: "I would NOT do branching in those existing files. * I would make the GraphQL flow its entire own flow at first." */ import { Inquirerer } from 'inquirerer'; import { PgpmPackage } from '@pgpmjs/core'; import { Schema } from './export-utils'; export interface ExportGraphQLOptions { project: PgpmPackage; /** GraphQL endpoint for metaschema/services data (e.g. http://private.localhost:3002/graphql) */ metaEndpoint: string; /** GraphQL endpoint for db_migrate data (e.g. http://db_migrate.localhost:3000/graphql) */ migrateEndpoint?: string; /** Extra headers for the migrate endpoint (e.g. Host header for subdomain routing) */ migrateHeaders?: Record; /** Bearer token for authentication */ token?: string; /** Extra headers to send with GraphQL requests (e.g. X-Meta-Schema) */ headers?: Record; /** Database ID to export */ databaseId: string; /** Database display name */ databaseName: string; /** Schema names selected for export */ schema_names: string[]; /** Schema rows (with name and schema_name) for the replacer */ schemas: Schema[]; /** Author string */ author: string; /** Output directory for packages */ outdir: string; /** Extension name for the DB module */ extensionName: string; /** Description for the DB extension */ extensionDesc?: string; /** Extension name for the service/meta module */ metaExtensionName: string; /** Description for the service/meta extension */ metaExtensionDesc?: string; prompter?: Inquirerer; argv?: Record; repoName?: string; username?: string; serviceOutdir?: string; skipSchemaRenaming?: boolean; } export declare const exportGraphQL: ({ project, metaEndpoint, migrateEndpoint, token, headers, migrateHeaders, databaseId, databaseName, schema_names, schemas, author, outdir, extensionName, extensionDesc, metaExtensionName, metaExtensionDesc, prompter, argv, repoName, username, serviceOutdir, skipSchemaRenaming }: ExportGraphQLOptions) => Promise;