import { ISerializable, Serializable } from "@js-soft/ts-serval"; import { CoreAddress, CoreDate, CoreId, ICoreAddress, ICoreDate, ICoreId } from "@nmshd/core-types"; import { CryptoSecretKey, ICryptoSecretKey } from "@nmshd/crypto"; import { CoreSynchronizable, ICoreSynchronizable } from "../../../core"; import { IPasswordProtection, PasswordProtection } from "../../../core/types/PasswordProtection"; import { TokenReference } from "../transmission/TokenReference"; export interface IToken extends ICoreSynchronizable { secretKey: ICryptoSecretKey; isOwn: boolean; passwordProtection?: IPasswordProtection; createdBy: ICoreAddress; createdAt: ICoreDate; expiresAt: ICoreDate; content: ISerializable; createdByDevice: ICoreId; forIdentity?: ICoreAddress; metadata?: any; metadataModifiedAt?: ICoreDate; } export declare class Token extends CoreSynchronizable implements IToken { readonly technicalProperties: string[]; readonly contentProperties: string[]; readonly userdataProperties: string[]; readonly metadataProperties: string[]; secretKey: CryptoSecretKey; isOwn: boolean; passwordProtection?: PasswordProtection; createdBy: CoreAddress; createdAt: CoreDate; expiresAt: CoreDate; content: Serializable; createdByDevice: CoreId; forIdentity?: CoreAddress; metadata?: any; metadataModifiedAt?: CoreDate; static from(value: IToken): Token; toTokenReference(backboneBaseUrl: string): TokenReference; setMetadata(metadata: any): void; } //# sourceMappingURL=Token.d.ts.map