import { ASTChunkGreybel } from 'greybel-core'; import { ASTBase } from 'miniscript-core'; import { Context } from './context'; import { DependencyLike, DependencyType } from './types/dependency'; import { ResourceManagerLike } from './types/resource-manager'; export interface DependencyOptions { target: string; resourceManager: ResourceManagerLike; chunk: ASTChunkGreybel; context: Context; type?: DependencyType | number; } export interface DependencyFindResult { dependencies: Map; } export interface DependencyFindResultWithMetadata extends DependencyFindResult { namespaces: string[]; literals: ASTBase[]; } export type ResourceDependencyMap = Map; export type DependencyCallStack = string[]; export declare class Dependency implements DependencyLike { target: string; id: string; resourceManager: ResourceManagerLike; chunk: ASTChunkGreybel; dependencies: Map; context: Context; injections: Map; type: DependencyType | number; static generateDependencyMappingKey(relativePath: string, type: DependencyType): string; constructor(options: DependencyOptions); getId(): string; getNamespace(): string; protected resolve(path: string, type: DependencyType): Dependency; findInjections(): Map; findDependencies(): DependencyFindResult; findDependenciesWithMetadata(): DependencyFindResultWithMetadata; }