{
  "name": "mobile",
  "description": "React Native mobile app using Expo",
  "type": "app",
  "variables": [
    {
      "name": "appName",
      "type": "string",
      "required": true,
      "description": "Name of the app (e.g., mobile, customer-app)"
    },
    {
      "name": "displayName",
      "type": "string",
      "required": true,
      "description": "Display name of the app as shown to users"
    },
    {
      "name": "includeNavigator",
      "type": "boolean",
      "default": true,
      "description": "Include React Navigation"
    },
    {
      "name": "includeAuth",
      "type": "boolean",
      "default": false,
      "description": "Include authentication setup"
    },
    {
      "name": "includeApiClient",
      "type": "boolean",
      "default": true,
      "description": "Include API client setup"
    }
  ],
  "files": [
    {
      "source": "package.json.hbs",
      "destination": "package.json"
    },
    {
      "source": "app.json.hbs",
      "destination": "app.json"
    },
    {
      "source": "tsconfig.json.hbs",
      "destination": "tsconfig.json"
    },
    {
      "source": "babel.config.js.hbs",
      "destination": "babel.config.js"
    },
    {
      "source": "metro.config.js.hbs",
      "destination": "metro.config.js"
    },
    {
      "source": "App.tsx.hbs",
      "destination": "App.tsx"
    },
    {
      "source": "app.config.ts.hbs",
      "destination": "app.config.ts"
    },
    {
      "source": "gitignore.hbs",
      "destination": ".gitignore"
    },
    {
      "source": "README.md.hbs",
      "destination": "README.md"
    },
    {
      "source": "src/screens/HomeScreen.tsx.hbs",
      "destination": "src/screens/HomeScreen.tsx"
    },
    {
      "source": "src/screens/ProfileScreen.tsx.hbs",
      "destination": "src/screens/ProfileScreen.tsx",
      "condition": "includeNavigator"
    },
    {
      "source": "src/navigation/AppNavigator.tsx.hbs",
      "destination": "src/navigation/AppNavigator.tsx",
      "condition": "includeNavigator"
    },
    {
      "source": "src/navigation/types.ts.hbs",
      "destination": "src/navigation/types.ts",
      "condition": "includeNavigator"
    },
    {
      "source": "src/api/client.ts.hbs",
      "destination": "src/api/client.ts",
      "condition": "includeApiClient"
    },
    {
      "source": "src/auth/AuthContext.tsx.hbs",
      "destination": "src/auth/AuthContext.tsx",
      "condition": "includeAuth"
    },
    {
      "source": "src/components/common/Button.tsx.hbs",
      "destination": "src/components/common/Button.tsx"
    },
    {
      "source": "src/config/index.ts.hbs",
      "destination": "src/config/index.ts"
    },
    {
      "source": "src/constants/colors.ts.hbs",
      "destination": "src/constants/colors.ts"
    },
    {
      "source": "src/constants/layout.ts.hbs",
      "destination": "src/constants/layout.ts"
    },
    {
      "source": "assets/icon.png",
      "destination": "assets/icon.png"
    },
    {
      "source": "assets/splash.png",
      "destination": "assets/splash.png"
    },
    {
      "source": "assets/adaptive-icon.png",
      "destination": "assets/adaptive-icon.png"
    }
  ]
}