derw
Version:
An Elm-inspired language that transpiles to TypeScript
25 lines (24 loc) • 1.05 kB
TypeScript
import { Result } from "@eeue56/ts-core/build/main/lib/result";
export type PackageModule = {
kind: "PackageModule";
name: string;
};
export declare function PackageModule(name: string): PackageModule;
export type Dependency = {
kind: "Dependency";
name: string;
version: string;
};
export declare function Dependency(name: string, version: string): Dependency;
export declare function dependenciesFromRecord(record: Record<string, string>): Dependency[];
export type Package = {
kind: "Package";
name: string;
exposing: PackageModule[];
dependencies: Dependency[];
};
export declare function Package(name: string, exposing: PackageModule[], dependencies: Dependency[]): Package;
export declare function addDependency(dependency: Dependency, package_: Package): Package;
export declare function exportPackage(package_: Package): string;
export declare function loadPackageFile(path: string): Promise<Result<string, Package>>;
export declare function decodePackage(potentialPackage: any): Result<string, Package>;