function generateGitIgnore(context) {
  const { manifest } = context;
  const ignorePatterns = [
    "# Dependencies",
    "node_modules/",
    "",
    "# Build output",
    "dist/",
    "build/",
    "",
    "# Environment",
    ".env",
    ".env.local",
    ".env.*.local",
    "",
    "# TypeScript",
    "*.tsbuildinfo",
    "",
    "# Logs",
    "logs/",
    "*.log",
    "npm-debug.log*",
    ""
  ];
  if (usesPrisma(manifest)) {
    ignorePatterns.push(
      "# Prisma",
      "prisma/migrations/",
      ""
    );
  }
  ignorePatterns.push(
    "# IDE",
    ".vscode/",
    ".idea/",
    "*.swp",
    "*.swo",
    "",
    "# OS",
    ".DS_Store",
    "Thumbs.db",
    "",
    "# Testing",
    "coverage/",
    ".nyc_output/"
  );
  return ignorePatterns.join("\n");
}
function usesPrisma(manifest) {
  if (!manifest || !manifest.capabilityMappings) {
    return false;
  }
  return manifest.capabilityMappings.some(
    (m) => m.instanceFactory?.toLowerCase().includes("prisma")
  );
}
export {
  generateGitIgnore as default
};
