import type { ParseNode } from '../parser/ParseNode.mts'; import { type JSStringValue } from '../value.mts'; import { type LoadedModuleRequestRecord } from '#self'; export type ImportedNamesValue = 'all' | 'all-but-default' | readonly JSStringValue[]; export interface ModuleRequestRecord { readonly Specifier: string; readonly Attributes: readonly ImportAttributeRecord[]; readonly Phase: 'source' | 'defer' | 'evaluation'; readonly ImportedNames: ImportedNamesValue; } export interface ImportAttributeRecord { readonly Key: string; readonly Value: string; } /** https://tc39.es/proposal-defer-import-eval/#sec-ModuleRequestsKeyEqual */ export declare function ModuleRequestsKeyEqual(left: ModuleRequestRecord | LoadedModuleRequestRecord, right: ModuleRequestRecord | LoadedModuleRequestRecord): boolean; /** https://tc39.es/proposal-deferred-reexports/#sec-ExportFromDeclarationModuleRequest */ export declare function ExportFromDeclarationModuleRequest(node: ParseNode.ExportDeclaration_NamedFrom): ModuleRequestRecord; export declare function ModuleRequests(node: ParseNode): ModuleRequestRecord[]; //# sourceMappingURL=ModuleRequests.d.mts.map