import { Interface, Namespace, Operation, Program, Type } from "@typespec/compiler";
import { MetadataInfo, Visibility } from "@typespec/http";
export interface VisibilityUsageTracker {
    getUsage(type: Type): Set<Visibility> | undefined;
    isUnreachable(type: Type): boolean;
}
export type OperationContainer = Namespace | Interface | Operation;
export declare function resolveVisibilityUsage(program: Program, metadataInfo: MetadataInfo, root: Namespace, omitUnreachableTypes: boolean): VisibilityUsageTracker;
//# sourceMappingURL=visibility-usage.d.ts.map