82ccd36edb226b078a74c86a9d44a5ded846ed0795c31770a5bfb9dae51612fa48ae72916d16afdfe85dd9c5615911345ada71e6befb023235a66a9219ccda 721 B

1234567891011121314
  1. type ListNode<T, K> = {
  2. key: K;
  3. next: undefined | ListNode<T, K>;
  4. value: T;
  5. };
  6. type RootNode<T, K> = {
  7. next: undefined | ListNode<T, K>;
  8. };
  9. export function listGetNode<T, K>(list: RootNode<T, K>, key: ListNode<T, K>['key'], isDelete?: boolean): ListNode<T, K> | undefined;
  10. export function listGet<T, K>(objects: undefined | RootNode<T, K>, key: ListNode<T, K>['key']): T | undefined;
  11. export function listSet<T, K>(objects: RootNode<T, K>, key: ListNode<T, K>['key'], value: T): void;
  12. export function listHas<T, K>(objects: undefined | RootNode<T, K>, key: ListNode<T, K>['key']): boolean;
  13. export function listDelete<T, K>(objects: undefined | RootNode<T, K>, key: ListNode<T, K>['key']): ListNode<T, K> | undefined;