/**
 * Stripe REST SDK — Client Generator (Round 2 stub)
 *
 * FACTORY-EMITTED — DO NOT EDIT (R8)
 *
 * This template generator is a forward-looking stub for the V2 Round 2
 * per-runtime emitter work. It will be fleshed out when the managed-runtime
 * realize emitter is implemented (Phase 3 of the Component Dependencies V2 proposal).
 *
 * When complete, this generator will emit a typed StripeClient wrapper that:
 *   - Initialises the Stripe SDK with the API key from env (STRIPE_SECRET_KEY)
 *   - Exposes only the operations selected in the consumer's `import[].select:`
 *   - Uses the `(deps, input) → result` pure-function shape for testability
 *   - Matches the `clientTemplate` path declared in stripe-rest-sdk.yaml v2metadata
 */

import type { TemplateContext } from '@specverse/types';

export async function generate(_context: TemplateContext): Promise<string> {
  // Round 2 stub — throws so realize reports an actionable error rather than silently emitting empty code
  throw new Error(
    'StripeRestSDK client generator is a V2 Round 2 stub. ' +
    'The managed-runtime realize emitter is not yet implemented. ' +
    'See Component Dependencies V2 proposal Phase 3.'
  );
}
