@codama/renderers-rust
Version:
Renders Rust clients for your programs
51 lines • 2.22 kB
TypeScript
import { RenderMap } from '@codama/renderers-core';
import type { RenderOptions } from '../renderVisitor';
import type { Fragment } from './fragment';
type CargoToml = CargoDependencyGroups & {
description?: string;
edition?: string | {
workspace: true;
};
features?: Record<string, string[]>;
license?: string | {
workspace: true;
};
name?: string;
repository?: string | {
workspace: true;
};
target?: Record<string, CargoDependencyGroups>;
version?: string;
workspace?: {
dependencies?: CargoDependencies;
};
};
type CargoDependencyGroups = {
'build-dependencies'?: CargoDependencies;
dependencies?: CargoDependencies;
'dev-dependencies'?: CargoDependencies;
};
export type CargoDependencies = Record<string, CargoDependency>;
type CargoDependency = CargoDependencyObject | string;
type CargoDependencyObject = {
branch?: string;
'default-features'?: boolean;
features?: string[];
git?: string;
optional?: boolean;
package?: string;
path?: string;
tag?: string;
version?: string;
workspace?: boolean;
};
export declare const DEFAULT_DEPENDENCY_VERSIONS: CargoDependencies;
export declare function syncCargoToml(renderMap: RenderMap<Fragment>, crateFolder: string, options: Pick<RenderOptions, 'dependencyMap' | 'dependencyVersions' | 'syncCargoToml'>): void;
export declare function createNewCargoToml(usedDependencies: CargoDependencies): CargoToml;
export declare function updateExistingCargoToml(cargoToml: CargoToml, usedDependencies: CargoDependencies): CargoToml;
export declare function checkExistingCargoToml(cargoToml: CargoToml, usedDependencies: CargoDependencies): void;
export declare function getUsedDependencyVersions(renderMap: RenderMap<Fragment>, dependencyMap: Record<string, string>, dependencyVersions: CargoDependencies): CargoDependencies;
export declare function shouldUpdateDependency(dependency: string, currentDependency: CargoDependency, requiredDependency: CargoDependency): boolean;
export declare function shouldUpdateRange(dependency: string, currentRange: string, requiredRange: string): boolean;
export {};
//# sourceMappingURL=cargoToml.d.ts.map