# export_fbx_all()

씬의 모든 레퍼런스를 지정된 폴더에 일괄 내보냅니다. 파일명은 각 레퍼런스의 네임스페이스를 기준으로 자동 생성됩니다. (`{namespace}.fbx`)

### 시그니처
```python
api.export_fbx_all(output_folder: str, fbx_options: dict = None, preset: str = None) -> dict
```

### 파라미터
| 파라미터 | 타입 | 설명 |
| --- | --- | --- |
| `output_folder` | `str` | 출력 폴더 절대 경로 |
| `fbx_options` | `dict` | FBX 옵션 오버라이드 (생략 시 preset 또는 기본 프리셋 사용) |
| `preset` | `str` | 사용할 프리셋 이름 [v2 신규] |

### 반환값
```python
{
    "success": bool,
    "message": str,
    "exported_count": int,
    "failed_count": int,
    "results": [
        {
            "slot": int,
            "name": str,
            "success": bool,
            "output_path": str,   # on success
            "error": str,         # on failure
        },
        ...
    ]
}
```

### 예외
| 예외 | 조건 |
| --- | --- |
| `ValueError` | 출력 폴더가 존재하지 않을 때, 없는 preset 이름 |
| `TypeError` | `fbx_options`가 `dict`가 아닐 때 |

### 예제
```python
from os_fast_ref.api import FastRefAPI

api = FastRefAPI()

# Default preset
result = api.export_fbx_all(output_folder=r"J:\output")
print(f"Exported: {result['exported_count']}, Failed: {result['failed_count']}")

# Named preset (v2)
result = api.export_fbx_all(output_folder=r"J:\output", preset="Unreal_Ani")

for r in result['results']:
    status = "OK" if r['success'] else "FAIL"
    print(f"  [{r['slot']}] {r['name']}: {status}")
```

---