/**
 * @import { ErrorCollector, Source } from "@helios-lang/compiler-utils"
 * @typedef {import("../typecheck/index.js").ScriptTypes} ScriptTypes
 * @typedef {import("../typecheck/index.js").Type} Type
 * @typedef {import("./EntryPoint.js").EntryPoint} EntryPoint
 */
/**
 * Creates a new entry point
 * This function can't be placed inside EntryPoint.js because that would create a circular import dependency
 * @param {string | Source} mainSrc
 * @param {(string | Source)[]} moduleSrcs - optional sources of modules, which can be used for imports
 * @param {ScriptTypes} validatorTypes
 * @param {ErrorCollector} errorCollector
 * @returns {EntryPoint}
 */
export function newEntryPoint(mainSrc: string | Source, moduleSrcs: (string | Source)[], validatorTypes: ScriptTypes, errorCollector: ErrorCollector): EntryPoint;
export type ScriptTypes = import("../typecheck/index.js").ScriptTypes;
export type Type = import("../typecheck/index.js").Type;
export type EntryPoint = import("./EntryPoint.js").EntryPoint;
import type { Source } from "@helios-lang/compiler-utils";
import type { ErrorCollector } from "@helios-lang/compiler-utils";
//# sourceMappingURL=newEntryPoint.d.ts.map