@interface CBIdentity : NSObject
// Class Members
+ (CBIdentity*)identityWithCSIdentity:(CSIdentityRef)csIdentity;
+ (CBIdentity*)identityWithName:(NSString*)name authority:(CBIdentityAuthority*)authority;
+ (CBIdentity*)identityWithPersistentReference:(NSData*)data;
+ (CBIdentity*)identityWithUUIDString:(NSString*)uuid authority:(CBIdentityAuthority*)authority;
// Instance Members
- (BOOL)isHidden;
- (BOOL)isMemberOfGroup:(CBGroupIdentity*)group;
- (CBIdentityAuthority*)authority;
- (CSIdentityRef)CSIdentity;
- (NSArray*)aliases;
- (NSData*)persistentReference;
- (NSImage*)image;
- (NSString*)UUIDString;
- (NSString*)emailAddress;
- (NSString*)fullName;
- (NSString*)posixName;
@interface CBUserIdentity : CBIdentity
// Class Members
+ (CBUserIdentity*)userIdentityWithPosixUID:(uid_t)uid authority:(CBIdentityAuthority*)authority;
// Instance Members
- (BOOL)authenticateWithPassword:(NSString*)password;
- (BOOL)isEnabled;
- (SecCertificateRef)certificate;
- (uid_t)posixUID;
@interface CBGroupIdentity : CBIdentity
// Class Members
+ (CBGroupIdentity*)groupIdentityWithPosixGID:(gid_t)gid authority:(CBIdentityAuthority*)authority;
// Instance Members
- (NSArray*)members;
- (gid_t)posixGID;
@interface CBIdentityAuthority : NSObject
// Class Members
+ (CBIdentityAuthority*)defaultIdentityAuthority;
+ (CBIdentityAuthority*)identityAuthorityWithCSIdentityAuthority:(CSIdentityAuthorityRef)CSIdentityAuthority;
+ (CBIdentityAuthority*)localIdentityAuthority;
+ (CBIdentityAuthority*)managedIdentityAuthority;
// Instance Members
- (CSIdentityAuthorityRef)CSIdentityAuthority;
- (NSString*)localizedName;
@interface CBIdentityPicker : NSObject
// Instance Members
- (BOOL)allowsMultipleSelection;
- (NSArray*)identities;
- (NSInteger)runModal;
- (NSString*)title;
- (void)runModalForWindow:(NSWindow*)window modalDelegate:(id)delegate didEndSelector:(SEL)didEndSelector contextInfo:(void*)contextInfo;
- (void)setAllowsMultipleSelection:(BOOL)flag;
- (void)setTitle:(NSString*)title;