UNPKG

@featurevisor/core

Version:

Core package of Featurevisor for Node.js usage

37 lines (36 loc) 1.79 kB
import type { FeatureKey, SegmentKey, AttributeKey } from "@featurevisor/types"; import { Dependencies } from "../dependencies"; import { Plugin } from "../cli"; export interface UsageInFeatures { [featureKey: string]: { features: Set<FeatureKey>; segments: Set<SegmentKey>; attributes: Set<AttributeKey>; }; } export declare function findAllUsageInFeatures(deps: Dependencies): Promise<UsageInFeatures>; export interface UsageInSegments { [segmentKey: string]: { attributes: Set<AttributeKey>; }; } export declare function findAllUsageInSegments(deps: Dependencies): Promise<UsageInSegments>; export declare function findFeatureUsage(usageInFeatures: UsageInFeatures, searchFeatureKey: FeatureKey): Promise<Set<FeatureKey>>; export declare function findSegmentUsage(usageInFeatures: UsageInFeatures, segmentKey: SegmentKey): Promise<Set<FeatureKey>>; export interface AttributeUsage { features: Set<FeatureKey>; segments: Set<SegmentKey>; } export declare function findAttributeUsage(usageInFeatures: UsageInFeatures, usageInSegments: UsageInSegments, attributeKey: AttributeKey): Promise<AttributeUsage>; export declare function findUnusedSegments(deps: Dependencies, usageInFeatures: UsageInFeatures): Promise<Set<SegmentKey>>; export declare function findUnusedAttributes(deps: Dependencies, usageInFeatures: UsageInFeatures, usageInSegments: UsageInSegments): Promise<Set<AttributeKey>>; export interface FindUsageOptions { feature?: string; segment?: string; attribute?: string; unusedSegments?: boolean; unusedAttributes?: boolean; authors?: boolean; } export declare function findUsageInProject(deps: Dependencies, options: FindUsageOptions): Promise<void>; export declare const findUsagePlugin: Plugin;