Versions in this module Expand all Collapse all v2 v2.1.0 Aug 12, 2023 Changes in this version + const DefaultExpiredScanInterval + type Answer string + func NewIntAnswer() Answer + type BaseCaptcha struct + func NewBaseCaptcha(expiry time.Duration) *BaseCaptcha + func (c *BaseCaptcha) Answer() Answer + func (c *BaseCaptcha) Expiry() time.Time + func (c *BaseCaptcha) Image(style string) *image.Image + func (c *BaseCaptcha) IsSolved() bool + func (c *BaseCaptcha) Solve(answer Answer) bool + type Captcha interface + Answer func() Answer + Expiry func() time.Time + Image func(style string) *image.Image + IsSolved func() bool + Solve func(answer Answer) bool + type DB interface + GetExpiry func() time.Duration + Image func(id ID, style string) *image.Image + IsSolved func(id ID) bool + New func(data string, captcha Captcha) (Captcha, ID) + Remove func(id ID) + SetExpiry func(expiry time.Duration) + Solve func(id ID, answer Answer) bool + type ID string + func NewID(additionalData string, answer Answer) ID