Основы .d.ts; export type и export
Изучите основы файлов объявлений: окружающие и модульные объявления, export type и export, а также способы обеспечить корректное удобство разработки для пользователей.
«Основы .d.ts; export type и export» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 1 из 2. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения TypeScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс TypeScript Academy содержит 2 уроков всего.
Введение
Цель: создавать полезные файлы .d.ts. Вы изучите контекст глобальных и модульных объявлений, узнаете, как объявлять экспорты и когда использовать export type вместо export.
- Глобальный и модульный контекст
- Экспорты только типов и экспорты значений
- Рекомендации
Глобальные объявления
Используйте declare global, чтобы расширить глобальную область видимости. Добавьте export {}, чтобы пометить файл как модуль и избежать конфликтов.
// globals.d.ts
// Ambient declaration: no import/export, augments global scope
declare global {
interface Window {
APP_VERSION: string
}
}
export {} // ensures this file is a moduleМодульные объявления
declare module описывает структуру внешнего пакета. Используйте внутри него экспорты, отражающие то, что предоставляет JS.
// types/index.d.ts
// Declare a module with exports
declare module "mylib" {
export function greet(name: string): string
export const version: string
}Экспорт типа и экспорт
export type (или интерфейс) предназначен только для конструкций типов. Используйте export для функций, констант и классов — объектов, существующих во время выполнения.
// shapes.d.ts
export type Point = { x: number; y: number }
export interface User {
id: string
name: string
}
export function distance(a: Point, b: Point): number
export const VERSION: stringДополнение модулей
Вы можете дополнять существующие модули, повторно открывая их в другом файле объявлений. Это полезно для исправления сторонних пакетов.
// augment.d.ts
import "mylib"
declare module "mylib" {
export function extra(): void
}Рекомендации
Рекомендации:
- Делайте .d.ts минимальными и избегайте ненужных глобальных объявлений.
- Чётко разделяйте экспорты только типов и экспорты значений.
- Тестируйте файлы объявлений с помощью
tsc --noEmitи примера использования.
Проверка export type
Быстрая проверка: когда следует использовать export type?
Повторение
Повторение: файлы .d.ts объявляют типы без реализации. Используйте declare global или declare module, разделяйте export type и export и следуйте рекомендациям.
Часто задаваемые вопросы
Урок «Основы .d.ts; export type и export» бесплатный?
Да — полный текст урока «Основы .d.ts; export type и export» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс TypeScript Academy, подпишись на CoddyKit PRO. Курс TypeScript Academy содержит 2 уроков всего.
Чему я научусь в уроке «Основы .d.ts; export type и export»?
Изучите основы файлов объявлений: окружающие и модульные объявления, export type и export, а также способы обеспечить корректное удобство разработки для пользователей. Ты практикуешь TypeScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать TypeScript Academy?
Предыдущий опыт не требуется. TypeScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 2.
Сколько времени занимает урок «Основы .d.ts; export type и export»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке TypeScript Academy?
Да. Каждый урок TypeScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы .d.ts; export type и export
- Публикация пакетов с типами