UNPKG

@freeword/meta

Version:

Meta package for Freeword: exports all core types, constants, and utilities from the src/ directory.

61 lines 2.64 kB
import type { ExtError } from '../types.ts'; export interface PathinfoDNA { barename: string; fext: string; dirpath: string; abspath?: string; } export interface PathinfoT { barename: string; fext: string; dirpath: string; abspath: string; ok: true; } export type FilerGist = 'ok' | 'fsErr' | 'pathErr' | 'writeErr' | 'readErr' | 'fileNotFound' | 'badPath' | 'badInput' | 'blankPath' | 'callerErr' | 'storageErr' | 'otherErr' | 'badStorekeyErr' | 'mistypeErr' | 'stringifyErr' | 'skipped' | 'parseErr' | 'noLocalStorageErr' | 'noBrowser' | 'ready'; export interface FilerResult<VT = any> extends Omit<Partial<PathinfoT>, 'ok'> { ok: boolean; gist?: FilerGist; val?: VT; err?: ExtError; raw?: any; tmi?: Record<string, any>; } export type Abspath = string; export type Relpath = string; export type Pathname = Relpath | Abspath; export type Anypath = PathinfoDNA | Pathname; export interface GoodFilerResult<VT = any> extends FilerResult<VT> { ok: true; gist: 'ok'; val: VT; } export interface GoodFilerPathedResult<VT = any> extends Omit<GoodFilerResult<VT>, keyof PathinfoT>, Omit<PathinfoT, 'ok'> { ok: true; } export interface BadFilerResult<GT extends FilerGist = FilerGist> extends FilerResult<never> { ok: false; gist: GT; err: ExtError; val?: never; origmsg?: string; } export type CoreReadGist = 'readErr' | 'fileNotFound' | 'badPath' | 'badInput' | 'blankPath'; export type CoreWriteGist = 'writeErr' | 'fsErr' | 'badPath' | 'badInput' | 'blankPath' | 'parseErr'; export interface GoodFilerReadResult<VT = PathinfoT> extends GoodFilerPathedResult<VT> { } export interface BadFilerReadResult<GT extends CoreReadGist> extends BadFilerResult<GT> { } export interface GoodFilerWriteResult<VT = PathinfoT> extends GoodFilerPathedResult<VT> { } export interface BadFilerWriteResult<GT extends CoreWriteGist> extends BadFilerResult<GT> { } export interface GoodFilerMkdirResult extends GoodFilerPathedResult<PathinfoT> { } export interface BadFilerMkdirResult extends BadFilerResult<'fsErr' | 'badPath' | 'badInput' | 'blankPath'> { } export type FilerOtherResult<VT = any, GT extends FilerGist = FilerGist> = GoodFilerResult<VT> | BadFilerResult<GT>; export type FilerReadResult<VT = PathinfoT, GT extends CoreReadGist = CoreReadGist> = GoodFilerReadResult<VT> | BadFilerReadResult<GT>; export type FilerWriteResult<VT = PathinfoT, GT extends CoreWriteGist = CoreWriteGist> = GoodFilerWriteResult<VT> | BadFilerWriteResult<GT>; export type FilerMkdirResult = GoodFilerMkdirResult | BadFilerMkdirResult; //# sourceMappingURL=FilerTypes.d.ts.map