iam-client-lib
Version:
Library for Decentralized Identity and Access Management
86 lines (85 loc) • 2.21 kB
TypeScript
import { IDIDDocument } from '@ew-did-registry/did-resolver-interface';
import { Order } from '../cache-client';
export interface Asset {
id: string;
owner: string;
offeredTo?: string;
document: IDIDDocument;
updatedAt: string;
createdAt: string;
}
export interface AssetHistory {
id: number;
emittedBy: string;
relatedTo?: string;
at: number;
timestamp: string;
assetId?: string;
type: AssetHistoryEventType;
}
export declare enum AssetHistoryEventType {
ASSET_CREATED = "ASSET_CREATED",
ASSET_OFFERED = "ASSET_OFFERED",
ASSET_OFFER_CANCELED = "ASSET_OFFER_CANCELED",
ASSET_TRANSFERRED = "ASSET_TRANSFERRED",
ASSET_OFFER_REJECTED = "ASSET_OFFER_REJECTED"
}
export interface OfferAssetOptions {
/** DID of offered asset */
assetDID: string;
/** Address of offer recipient */
offerTo: string;
}
export interface AcceptAssetOfferOptions {
/** DID of offered asset */
assetDID: string;
}
export interface RejectAssetOfferOptions {
/** DID of offered asset */
assetDID: string;
}
export interface CancelAssetOfferOptions {
/** DID of offered asset */
assetDID: string;
}
export interface GetOwnedAssetsOptions {
/** DID of the user */
did: string;
}
export interface GetOfferedAssetsOptions {
/** DID of the user */
did?: string;
}
export interface GetAssetByIdOptions {
/** DID of the asset */
id: string;
}
export interface GetPreviouslyOwnedAssetsOptions {
/** DID of the user */
owner: string;
}
export interface GetAssetHistoryOptions {
/** DID of the asset */
id: string;
/** Order "ASC" (Ascending) || "DESC" (Descending) */
order?: Order;
/** Number of items to take */
take?: number;
/** Number of items to skip */
skip?: number;
/** Asset history event Type */
type?: AssetHistoryEventType;
}
export interface OfferAssetTxOptions {
offerTo: string;
assetContractAddress: string;
}
export interface AcceptOfferTxOptions {
assetContractAddress: string;
}
export interface RejectOfferTxOptions {
assetContractAddress: string;
}
export interface CancelOfferTxOptions {
assetContractAddress: string;
}