package client type Options struct { Url string DataSource string } type Client interface { Task(TaskOptions) (Task, error) Notice(NoticeOptions) (Notice, error) } func NewClient(options Options) (Client, error) { return newClient(options) }