forked from jsnbuchanan/crowd-funder-for-time-pwa
fix some errors and correct recent type duplications & bloat (cherry-picked from d8f2587d1c)
This commit is contained in:
@@ -1,14 +1,24 @@
|
||||
import { GenericVerifiableCredential } from "./common";
|
||||
/**
|
||||
* Types of Claims
|
||||
*
|
||||
* Note that these are for the claims that get signed.
|
||||
* Records that are the latest edited entities are in the records.ts file.
|
||||
*
|
||||
*/
|
||||
|
||||
export interface AgreeVerifiableCredential {
|
||||
"@context": string;
|
||||
import { ClaimObject } from "./common";
|
||||
|
||||
export interface AgreeActionClaim extends ClaimObject {
|
||||
"@context": "https://schema.org";
|
||||
"@type": string;
|
||||
object: Record<string, unknown>;
|
||||
}
|
||||
|
||||
// Note that previous VCs may have additional fields.
|
||||
// https://endorser.ch/doc/html/transactions.html#id4
|
||||
export interface GiveVerifiableCredential extends GenericVerifiableCredential {
|
||||
export interface GiveActionClaim extends ClaimObject {
|
||||
// context is optional because it might be embedded in another claim, eg. an AgreeAction
|
||||
"@context"?: "https://schema.org";
|
||||
"@type": "GiveAction";
|
||||
agent?: { identifier: string };
|
||||
description?: string;
|
||||
@@ -16,43 +26,21 @@ export interface GiveVerifiableCredential extends GenericVerifiableCredential {
|
||||
identifier?: string;
|
||||
image?: string;
|
||||
object?: { amountOfThisGood: number; unitCode: string };
|
||||
provider?: GenericVerifiableCredential;
|
||||
provider?: ClaimObject;
|
||||
recipient?: { identifier: string };
|
||||
type: string[];
|
||||
issuer: string;
|
||||
issuanceDate: string;
|
||||
credentialSubject: {
|
||||
id: string;
|
||||
type: "GiveAction";
|
||||
offeredBy?: {
|
||||
type: "Person";
|
||||
identifier: string;
|
||||
};
|
||||
offeredTo?: {
|
||||
type: "Person";
|
||||
identifier: string;
|
||||
};
|
||||
offeredToProject?: {
|
||||
type: "Project";
|
||||
identifier: string;
|
||||
};
|
||||
offeredToProjectVisibleToDids?: string[];
|
||||
offeredToVisibleToDids?: string[];
|
||||
offeredByVisibleToDids?: string[];
|
||||
amount: {
|
||||
type: "QuantitativeValue";
|
||||
value: number;
|
||||
unitCode: string;
|
||||
};
|
||||
startTime?: string;
|
||||
endTime?: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface JoinActionClaim extends ClaimObject {
|
||||
agent?: { identifier: string };
|
||||
event?: { organizer?: { name: string }; name?: string; startTime?: string };
|
||||
}
|
||||
|
||||
// Note that previous VCs may have additional fields.
|
||||
// https://endorser.ch/doc/html/transactions.html#id8
|
||||
export interface OfferVerifiableCredential extends GenericVerifiableCredential {
|
||||
export interface OfferClaim extends ClaimObject {
|
||||
"@context": "https://schema.org";
|
||||
"@type": "Offer";
|
||||
agent?: { identifier: string };
|
||||
description?: string;
|
||||
fulfills?: { "@type": string; identifier?: string; lastClaimId?: string }[];
|
||||
identifier?: string;
|
||||
@@ -67,43 +55,18 @@ export interface OfferVerifiableCredential extends GenericVerifiableCredential {
|
||||
name?: string;
|
||||
};
|
||||
};
|
||||
provider?: GenericVerifiableCredential;
|
||||
offeredBy?: {
|
||||
type?: "Person";
|
||||
identifier: string;
|
||||
};
|
||||
provider?: ClaimObject;
|
||||
recipient?: { identifier: string };
|
||||
validThrough?: string;
|
||||
type: string[];
|
||||
issuer: string;
|
||||
issuanceDate: string;
|
||||
credentialSubject: {
|
||||
id: string;
|
||||
type: "Offer";
|
||||
offeredBy?: {
|
||||
type: "Person";
|
||||
identifier: string;
|
||||
};
|
||||
offeredTo?: {
|
||||
type: "Person";
|
||||
identifier: string;
|
||||
};
|
||||
offeredToProject?: {
|
||||
type: "Project";
|
||||
identifier: string;
|
||||
};
|
||||
offeredToProjectVisibleToDids?: string[];
|
||||
offeredToVisibleToDids?: string[];
|
||||
offeredByVisibleToDids?: string[];
|
||||
amount: {
|
||||
type: "QuantitativeValue";
|
||||
value: number;
|
||||
unitCode: string;
|
||||
};
|
||||
startTime?: string;
|
||||
endTime?: string;
|
||||
};
|
||||
}
|
||||
|
||||
// Note that previous VCs may have additional fields.
|
||||
// https://endorser.ch/doc/html/transactions.html#id7
|
||||
export interface PlanVerifiableCredential extends GenericVerifiableCredential {
|
||||
export interface PlanActionClaim extends ClaimObject {
|
||||
"@context": "https://schema.org";
|
||||
"@type": "PlanAction";
|
||||
name: string;
|
||||
@@ -117,11 +80,18 @@ export interface PlanVerifiableCredential extends GenericVerifiableCredential {
|
||||
}
|
||||
|
||||
// AKA Registration & RegisterAction
|
||||
export interface RegisterVerifiableCredential {
|
||||
"@context": string;
|
||||
export interface RegisterActionClaim extends ClaimObject {
|
||||
"@context": "https://schema.org";
|
||||
"@type": "RegisterAction";
|
||||
agent: { identifier: string };
|
||||
identifier?: string;
|
||||
object: string;
|
||||
object?: string;
|
||||
participant?: { identifier: string };
|
||||
}
|
||||
|
||||
export interface TenureClaim extends ClaimObject {
|
||||
"@context": "https://endorser.ch";
|
||||
"@type": "Tenure";
|
||||
party?: { identifier: string };
|
||||
spatialUnit?: { geo?: { polygon?: string } };
|
||||
}
|
||||
|
||||
@@ -37,15 +37,19 @@ export interface ErrorResult extends ResultWithType {
|
||||
|
||||
export interface KeyMeta {
|
||||
did: string;
|
||||
name?: string;
|
||||
publicKeyHex: string;
|
||||
mnemonic: string;
|
||||
derivationPath: string;
|
||||
registered?: boolean;
|
||||
profileImageUrl?: string;
|
||||
identity?: string; // Stringified IIdentifier object from Veramo
|
||||
derivationPath?: string;
|
||||
passkeyCredIdHex?: string; // The Webauthn credential ID in hex, if this is from a passkey
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface KeyMetaMaybeWithPrivate extends KeyMeta {
|
||||
mnemonic?: string; // 12 or 24 words encoding the seed
|
||||
identity?: string; // Stringified IIdentifier object from Veramo
|
||||
}
|
||||
|
||||
export interface KeyMetaWithPrivate extends KeyMeta {
|
||||
mnemonic: string; // 12 or 24 words encoding the seed
|
||||
identity: string; // Stringified IIdentifier object from Veramo
|
||||
}
|
||||
|
||||
export interface QuantitativeValue extends GenericVerifiableCredential {
|
||||
@@ -53,7 +57,6 @@ export interface QuantitativeValue extends GenericVerifiableCredential {
|
||||
"@context"?: string;
|
||||
amountOfThisGood: number;
|
||||
unitCode: string;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface AxiosErrorResponse {
|
||||
@@ -87,34 +90,14 @@ export interface CreateAndSubmitClaimResult {
|
||||
handleId?: string;
|
||||
}
|
||||
|
||||
export interface PlanSummaryRecord {
|
||||
handleId: string;
|
||||
issuer: string;
|
||||
claim: GenericVerifiableCredential;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface Agent {
|
||||
identifier?: string;
|
||||
did?: string;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface ClaimObject {
|
||||
"@type": string;
|
||||
"@context"?: string;
|
||||
fulfills?: Array<{
|
||||
"@type": string;
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
}>;
|
||||
object?: GenericVerifiableCredential;
|
||||
agent?: Agent;
|
||||
participant?: {
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
};
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
@@ -125,53 +108,3 @@ export interface VerifiableCredentialClaim {
|
||||
credentialSubject: ClaimObject;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface GiveVerifiableCredential extends GenericVerifiableCredential {
|
||||
"@type": "GiveAction";
|
||||
object?: GenericVerifiableCredential;
|
||||
agent?: Agent;
|
||||
participant?: {
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
};
|
||||
fulfills?: Array<{
|
||||
"@type": string;
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
}>;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface OfferVerifiableCredential extends GenericVerifiableCredential {
|
||||
"@type": "Offer";
|
||||
object?: GenericVerifiableCredential;
|
||||
agent?: Agent;
|
||||
participant?: {
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
};
|
||||
itemOffered?: {
|
||||
description?: string;
|
||||
isPartOf?: {
|
||||
"@type": string;
|
||||
identifier: string;
|
||||
[key: string]: unknown;
|
||||
};
|
||||
[key: string]: unknown;
|
||||
};
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
export interface RegisterVerifiableCredential
|
||||
extends GenericVerifiableCredential {
|
||||
"@type": "RegisterAction";
|
||||
agent: {
|
||||
identifier: string;
|
||||
};
|
||||
object: string;
|
||||
participant?: {
|
||||
identifier: string;
|
||||
};
|
||||
identifier?: string;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
@@ -13,9 +13,9 @@ export type {
|
||||
|
||||
export type {
|
||||
// From claims.ts
|
||||
GiveVerifiableCredential,
|
||||
OfferVerifiableCredential,
|
||||
RegisterVerifiableCredential,
|
||||
GiveActionClaim,
|
||||
OfferClaim,
|
||||
RegisterActionClaim,
|
||||
} from "./claims";
|
||||
|
||||
export type {
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { GiveVerifiableCredential, OfferVerifiableCredential } from "./claims";
|
||||
import { GiveActionClaim, OfferClaim } from "./claims";
|
||||
|
||||
// a summary record; the VC is found the fullClaim field
|
||||
export interface GiveSummaryRecord {
|
||||
[x: string]: PropertyKey | undefined | GiveVerifiableCredential;
|
||||
[x: string]: PropertyKey | undefined | GiveActionClaim;
|
||||
type?: string;
|
||||
agentDid: string;
|
||||
amount: number;
|
||||
amountConfirmed: number;
|
||||
description: string;
|
||||
fullClaim: GiveVerifiableCredential;
|
||||
fullClaim: GiveActionClaim;
|
||||
fulfillsHandleId: string;
|
||||
fulfillsPlanHandleId?: string;
|
||||
fulfillsType?: string;
|
||||
@@ -26,7 +26,7 @@ export interface OfferSummaryRecord {
|
||||
amount: number;
|
||||
amountGiven: number;
|
||||
amountGivenConfirmed: number;
|
||||
fullClaim: OfferVerifiableCredential;
|
||||
fullClaim: OfferClaim;
|
||||
fulfillsPlanHandleId: string;
|
||||
handleId: string;
|
||||
issuerDid: string;
|
||||
|
||||
Reference in New Issue
Block a user