(value: unknown)
| 9 | export const FS_LOCK_OWNER_FILE = 'owner.json'; |
| 10 | |
| 11 | export function isFsLockOwner(value: unknown): value is FsLockOwner { |
| 12 | if (typeof value !== 'object' || value === null) { |
| 13 | return false; |
| 14 | } |
| 15 | const owner = value as Partial<FsLockOwner>; |
| 16 | return ( |
| 17 | typeof owner.token === 'string' && |
| 18 | owner.token.length > 0 && |
| 19 | typeof owner.pid === 'number' && |
| 20 | Number.isInteger(owner.pid) && |
| 21 | owner.pid > 0 && |
| 22 | typeof owner.purpose === 'string' && |
| 23 | owner.purpose.length > 0 && |
| 24 | typeof owner.acquiredAtMs === 'number' && |
| 25 | Number.isFinite(owner.acquiredAtMs) && |
| 26 | typeof owner.expiresAtMs === 'number' && |
| 27 | Number.isFinite(owner.expiresAtMs) |
| 28 | ); |
| 29 | } |
| 30 | |
| 31 | export function fsLockOwnersEqual(left: FsLockOwner | null, right: FsLockOwner): boolean { |
| 32 | return ( |
no outgoing calls
no test coverage detected