;; tipstream-delegation
;; Delegation system
(define-data-var total-delegations uint u0)
(define-map delegations uint {
creator: principal,
value: uint,
at-block: uint
})
(define-public (delegate-to (delegate-id uint))
(let
(
(id (var-get total-delegations))
)
(map-set delegations id {
creator: tx-sender,
value: delegate-id,
at-block: block-height
})
(var-set total-delegations (+ id u1))
(ok id)
)
)
(define-read-only (get-entry (id uint))
(map-get? delegations id)
)
(define-read-only (get-total)
(ok (var-get total-delegations))
)