@karmaniverous/entity-tools
GitHub
Preparing search index...
entity-tools
EncodeDecodeAgreement
Type Alias EncodeDecodeAgreement<T>
EncodeDecodeAgreement
:
{
[
K
in
keyof
T
]
-?:
K
extends
string
?
[
EncodeParam
<
T
[
K
]
>
]
extends
[
never
]
?
MissingEncodeError
<
K
>
:
[
DecodeReturn
<
T
[
K
]
>
]
extends
[
never
]
?
MissingDecodeError
<
K
>
:
[
EncodeParam
<
T
[
K
]
>
]
extends
[
DecodeReturn
<
T
[
K
]
>
]
?
[
DecodeReturn
<
T
[
K
]
>
]
extends
[
EncodeParam
<
T
[
K
]
>
]
?
T
[
K
]
:
EncodeDecodeMismatchError
<
K
,
EncodeParam
<
T
[
K
]
>
,
DecodeReturn
<
T
[
K
]
>
>
:
EncodeDecodeMismatchError
<
K
,
EncodeParam
<
T
[
K
]
>
,
DecodeReturn
<
T
[
K
]
>
>
:
T
[
K
]
}
Ensures that for each entry K:
encode: (value: VK) => string
decode: (value: string) => VK and VK matches in both positions (bi-directionally).
Type Parameters
T
extends
Record
<
string
,
{
decode
:
(
value
:
string
)
=>
unknown
}
>
Settings
Member Visibility
Protected
Theme
OS
Light
Dark
GitHub
@karmaniverous/entity-tools
Loading...
Ensures that for each entry K: