UNPKG

@typespec/versioning

Version:

TypeSpec library for declaring and emitting versioned APIs

24 lines 1.54 kB
import { type Enum, type EnumMember, type Namespace, type Program, type Type } from "@typespec/compiler"; import { type VersionMap } from "./decorators.js"; import type { Version, VersionResolution } from "./types.js"; import { TimelineMoment, VersioningTimeline } from "./versioning-timeline.js"; export declare function getVersionDependencies(program: Program, namespace: Namespace): Map<Namespace, Map<Version, Version> | Version> | undefined; /** * Resolve the version to use for all namespace for each of the root namespace versions. * @param program * @param rootNs Root namespace. */ export declare function resolveVersions(program: Program, namespace: Namespace): VersionResolution[]; export declare function getVersionsForEnum(program: Program, en: Enum): [Namespace, VersionMap] | []; export declare function getVersions(p: Program, t: Type): [Namespace, VersionMap] | []; export declare function getAllVersions(p: Program, t: Type): Version[] | undefined; export declare enum Availability { Unavailable = "Unavailable", Added = "Added", Available = "Available", Removed = "Removed" } export declare function getAvailabilityMap(program: Program, type: Type): Map<string, Availability> | undefined; export declare function getAvailabilityMapInTimeline(program: Program, type: Type, timeline: VersioningTimeline): Map<TimelineMoment, Availability> | undefined; export declare function getVersionForEnumMember(program: Program, member: EnumMember): Version | undefined; //# sourceMappingURL=versioning.d.ts.map