import { DependencyTree } from "../../runtime/runtimeTypes"; import { SqlDerivedRelation } from "../../parser/sqlAstTypes"; import { RelationNameType, DielAst, CompositeSelection, SelectionUnit, RelationReference, DerivedRelation } from "../../parser/dielAstTypes"; export declare function ArrangeInTopologicalOrder(ast: DielAst): void; /** * return the set of the relations that depent on the table passed in * TODO add depndsOn?: true and do another pass that uses transitive closure to figure out all dependnecies * @param depTree * @param rName * @param depndsOn the boolean is defaulted to true, if it's false, it's the other direction. */ export declare function DeriveDependentRelations(depTree: DependencyTree, rName: RelationNameType): Set; export declare function DeriveDepTreeFromSqlRelations(views: SqlDerivedRelation[], dynamic: Set): DependencyTree; /** * Get the set of relations that the view depends on * needs to iterate until we hit the original tables * @param viewName * @param depTree */ export declare function DeriveOriginalRelationsAViewDependsOn(depTree: DependencyTree, viewName: string): Set | null; export declare function AddDepTree(ast: DielAst): DependencyTree; export declare function AddSingleDependencyByDerivedRelation(ast: DielAst, view: DerivedRelation): void; export declare function AddSingleDependency(depTree: DependencyTree, selection: CompositeSelection, rName: string, isDynamic: (rName: string) => boolean): void; export declare function getSelectionUnitDep(s: SelectionUnit): string[]; export declare function getRelationReferenceDep(ref: RelationReference): string[] | null; //# sourceMappingURL=dependency.d.ts.map