UNPKG

captan

Version:

Captan — Command your ownership. A tiny, hackable CLI cap table tool.

59 lines 1.91 kB
/** * Identifier Resolution System * * Provides utilities to resolve stakeholder identifiers that can be either: * - A prefixed ID (e.g., "sh_alice") * - An email address (e.g., "alice@example.com") * * This allows users to reference stakeholders using whichever identifier * is more convenient for their workflow. */ import { Stakeholder } from './model.js'; export interface ResolverResult { success: boolean; stakeholder?: Stakeholder; error?: string; } /** * Determines if a string is likely an email address */ export declare function isEmail(identifier: string): boolean; /** * Determines if a string is a prefixed ID */ export declare function isPrefixedId(identifier: string): boolean; /** * Resolves a stakeholder identifier (ID or email) to a Stakeholder object */ export declare function resolveStakeholder(identifier: string | undefined): ResolverResult; /** * Resolves multiple stakeholder identifiers */ export declare function resolveStakeholders(identifiers: string[]): { success: boolean; stakeholders: Stakeholder[]; errors: string[]; }; /** * Gets a display name for a stakeholder identifier * This is useful for error messages and confirmations */ export declare function getIdentifierDisplay(identifier: string): string; /** * Validates that an identifier can be used for stakeholder lookup */ export declare function validateIdentifier(identifier: string): { valid: boolean; type?: 'email' | 'id'; error?: string; }; /** * Suggests similar stakeholders when resolution fails * Useful for providing helpful error messages */ export declare function suggestSimilarStakeholders(identifier: string, limit?: number): Stakeholder[]; /** * Formats a stakeholder for display with both ID and email */ export declare function formatStakeholderReference(stakeholder: Stakeholder): string; //# sourceMappingURL=identifier-resolver.d.ts.map