export declare function simctlContainerTool(args: any): Promise<{ content: { type: "text"; text: string; }[]; isError: boolean; }>; export declare const SIMCTL_CONTAINER_DOCS = "\n# simctl-container\n\nApp sandbox inspector \u2014 list files, read file contents, inspect UserDefaults, and locate Core Data stores inside an iOS simulator app's data container.\n\n## What it does\n\nResolves the app data container via `xcrun simctl get_app_container`, then performs semantic\nfile operations within that sandbox without needing to know the raw CoreSimulator path.\n\n## Parameters\n\n- **bundleId** (string, required): App bundle identifier (e.g. com.example.MyApp)\n- **mode** (string, required): Operation \u2014 `ls` | `cat` | `userdefaults` | `coredata-path`\n- **udid** (string, optional): Simulator UDID. Defaults to booted device.\n- **path** (string, optional): Sub-path for `ls` (subdir) or file path for `cat`\n- **depth** (number, optional): Recursion depth for `ls` (default: 3)\n\n## Modes\n\n### ls\nLists files in the container (or a sub-path) up to `depth` levels deep.\nReturns entries with `path`, `kind` (file/dir/symlink), and `sizeBytes`.\nPath traversal outside the container root is rejected.\n\n### cat\nReads a file at `path` (relative to container root).\n- Attempts plist decode first (binary and XML plists via `plutil`)\n- Falls back to UTF-8 text, then binary detection\n- Returns `contentType`: `plist` | `text` | `binary`\n- Files > 8 KB (text/plist) are stored in responseCache; returns `cacheId` + `resourceLink`\n\n### userdefaults\nReads `Library/Preferences/.plist` and returns decoded key/value pairs.\nHandles both binary and XML plist formats via `plutil`.\n\n### coredata-path\nSearches `Library/Application Support/` and `Documents/` recursively for\n`.sqlite`, `.sqlite-wal`, and `.sqlite-shm` files.\nReturns `{ path, absolutePath, sizeBytes, type }` for each store found.\n\n## Returns\n\nJSON response with `{ mode, bundleId, success, ... }` plus mode-specific fields and `guidance`.\n\n## Examples\n\n### List container root\n```typescript\nawait simctlContainerTool({ bundleId: 'com.example.MyApp', mode: 'ls' })\n```\n\n### List a sub-directory\n```typescript\nawait simctlContainerTool({ bundleId: 'com.example.MyApp', mode: 'ls', path: 'Library/Caches' })\n```\n\n### Read a JSON config file\n```typescript\nawait simctlContainerTool({ bundleId: 'com.example.MyApp', mode: 'cat', path: 'Documents/config.json' })\n```\n\n### Inspect UserDefaults\n```typescript\nawait simctlContainerTool({ bundleId: 'com.example.MyApp', mode: 'userdefaults' })\n```\n\n### Find Core Data stores\n```typescript\nawait simctlContainerTool({ bundleId: 'com.example.MyApp', mode: 'coredata-path' })\n```\n\n## Error Handling\n\n- **bundleId required**: Rejects empty or missing bundleId\n- **mode required**: Rejects unknown or missing mode\n- **path required for cat**: Rejects cat without a path\n- **container not found**: InternalError with install suggestion\n- **path escapes container**: InvalidRequest with clear message\n- **plist unreadable**: InternalError with path context\n\n## Notes\n\n- Keychain is explicitly out of scope\n- Binary plist decoding uses `plutil -convert json` (macOS built-in)\n- Large text/plist files (> 8 KB) are cached; retrieve via `cacheId` using the cache tool\n"; export declare const SIMCTL_CONTAINER_DOCS_MINI = "Inspect app sandbox: list files (ls), read files (cat), UserDefaults, Core Data paths. Use rtfm({ toolName: \"simctl-container\" }) for docs."; //# sourceMappingURL=container.d.ts.map