import { type SourceSection } from '../routing/types'; import { type AppPath } from '../routing/paths'; /** * Parses and validates source section from an unknown input. * * @param value - Raw section value * @returns Valid source section or undefined * * @example * parseSourceSection('secrets') // 'secrets' * parseSourceSection('unknown') // undefined */ export declare const parseSourceSection: (value: unknown) => SourceSection | undefined; /** * App navigation path accepted by `useNavigate`: * known app route optionally followed by a query string. */ export type AppNavigationPath = AppPath | `${AppPath}?${string}`; /** * Parses and validates persisted draft resume path. * * Validation rules: * - path must be within the create flow (`/create` and known child routes) * - only `/create/source` may contain query params * - for `/create/source`, only `section` query is allowed * - `section` value must be one of known source sections * * Returns a normalized path suitable for navigation, or undefined when invalid/stale. * * @param value - Raw persisted `clientData.finishedOn` value * @returns Validated app navigation path or undefined * * @example * parseDraftResumePath('/create/source?section=secrets') // '/create/source?section=secrets' * parseDraftResumePath('/create/source?section=unknown') // undefined * parseDraftResumePath('/manage/dashboard') // undefined */ export declare const parseDraftResumePath: (value: unknown) => AppNavigationPath | undefined; /** * Extracts create-flow resume path from current host path. * * Supports consumers that prepend extra base segments (e.g. `/pipeline/create/source`). * Extracted path is re-validated via `parseDraftResumePath`. * * @param currentPath - Current path from `NavigationService.getPath()` * @returns Validated create resume path or undefined * * @example * extractCreateResumePath('/pipeline/create/source?section=configuration') * // '/create/source?section=configuration' * extractCreateResumePath('/pipeline/manage/dashboard') // undefined */ export declare const extractCreateResumePath: (currentPath: string) => AppNavigationPath | undefined;