34 lines
825 B
Swift
34 lines
825 B
Swift
|
//
|
||
|
// AccountProtocol.swift
|
||
|
// Pachyderm
|
||
|
//
|
||
|
// Created by Shadowfacts on 4/11/20.
|
||
|
// Copyright © 2020 Shadowfacts. All rights reserved.
|
||
|
//
|
||
|
|
||
|
import Foundation
|
||
|
|
||
|
public protocol AccountProtocol {
|
||
|
associatedtype Account: AccountProtocol
|
||
|
|
||
|
var id: String { get }
|
||
|
var username: String { get }
|
||
|
var acct: String { get }
|
||
|
var displayName: String { get }
|
||
|
var locked: Bool { get }
|
||
|
var createdAt: Date { get }
|
||
|
var followersCount: Int { get }
|
||
|
var followingCount: Int { get }
|
||
|
var statusesCount: Int { get }
|
||
|
var note: String { get }
|
||
|
var url: URL { get }
|
||
|
var avatar: URL { get }
|
||
|
var header: URL { get }
|
||
|
var moved: Bool? { get }
|
||
|
var bot: Bool? { get }
|
||
|
|
||
|
var movedTo: Account? { get }
|
||
|
var emojis: [Emoji] { get }
|
||
|
var fields: [Pachyderm.Account.Field] { get }
|
||
|
}
|