import { Meta, Source } from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/vi/figma-code/Classes/FigmaTopLevelFrames - Quản lý các frame cấp cao nhất'/>

# Lớp `FigmaTopLevelFrames`

Một lớp tiện ích tĩnh để quản lý và đồng bộ hóa danh sách các frame và section cấp cao nhất trên trang Figma hiện tại. Nó định dạng các node thành một danh sách đơn giản hóa để hiển thị trong giao diện người dùng (UI) của plugin.

## Các tính năng chính

- **Tạo danh sách tự động** — Tự động xác định các frame và section tại gốc của trang hiện tại.
- **Dữ liệu hình ảnh** — Xuất ảnh chụp màn hình JPG cho mỗi frame để cung cấp bản xem trước trực quan trong UI.
- **Tích hợp tin nhắn** — Phương thức `send()` thiết lập các trình lắng nghe để tự động phản hồi các yêu cầu từ UI về danh sách frame.

## Khởi tạo

Vì đây là một lớp tĩnh, không cần khởi tạo thực thể. Thông thường, bạn chỉ cần gọi thiết lập giao tiếp trong tệp plugin chính của mình.

```typescript
import { FigmaTopLevelFrames } from '@dxtmisha/figma-code'

// Thiết lập trình lắng nghe cho các yêu cầu từ UI
FigmaTopLevelFrames.send()
```

## Các phương thức

### Truy xuất dữ liệu

- `static get(): Promise<UiFigmaFramesList>` — Truy xuất, định dạng và lưu tạm danh sách các frame cấp cao nhất.

### Giao tiếp (Communication)

- `static send(): void` — Khởi tạo các trình lắng nghe `FigmaPluginMessenger` để xử lý các yêu cầu danh sách frame từ UI.

## Các kiểu dữ liệu

#### `UiFigmaFramesList`
Một mảng các đối tượng đại diện cho các frame cấp cao nhất.
- `name: string` — Tên của frame.
- `id: string` — ID duy nhất của frame.
- `image: Uint8Array | string` — Ảnh chụp màn hình JPG đã xuất của frame.
