Skip to main content

TypeAlias.DppPassport

type DppPassport = {
actions: {
enabled: boolean;
icon?: string;
id: string;
label?: Partial<Record<"en-US" | "fr-FR", string>>;
url?: string;
}[];
allowedClaimEmail: string | null;
allowedClaimPhoneNumber: string | null;
application: string;
batch?: { id: string; createdAt: string; updatedAt: string; application: string; network: "EthereumAnvil" | "BaseSepolia" | "StarknetDevnet" | "StarknetSepolia" | "StarknetMainnet" | "StellarQuickstart" | "StellarTestnet" | "StellarMainnet"; ... 18 more ...; batch?: ... | undefined; };
certificationStatus: "error" | "pending" | "certified";
certifiedAt: Date | null;
certifiedPaths: string[];
createdAt: string;
data: {
[key: string]: unknown;
};
editable: boolean;
id: string;
ipfsCid: string | null;
lastCertificateHash: string | null;
mintedTo?: | {
address: string;
application: string;
createdAt: string;
dpp: {
isActive: boolean;
lastActivityAt?: Date | null;
passportCount: number;
};
explorerUrl?: string;
id: string;
loyalty: {
fixedRewardTier: string | null;
optimisticBalance: string;
rewardTier?: | {
application: string;
bgImageUrl?: string | null;
createdAt: string;
currencyToPointRatio: number;
id: string;
name: string;
requiredVisits: number;
updatedAt: string;
}
| null;
visits: number;
zelty: {
customerId?: number | null;
};
};
network: | "EthereumAnvil"
| "BaseSepolia"
| "StarknetDevnet"
| "StarknetSepolia"
| "StarknetMainnet"
| "StellarQuickstart"
| "StellarTestnet"
| "StellarMainnet";
updatedAt: string;
user: {
birthDate?: string | null;
createdAt: string;
email: string;
emailVerified: boolean;
id: string;
image?: string | null;
name: string;
phoneNumber?: string | null;
phoneNumberVerified?: boolean | null;
preferredLocale?: "en-US" | "fr-FR" | "es-ES" | "it-IT" | null;
updatedAt: string;
};
}
| null;
model?: { id: string; createdAt: string; updatedAt: string; application: string; network: "EthereumAnvil" | "BaseSepolia" | "StarknetDevnet" | "StarknetSepolia" | "StarknetMainnet" | "StellarQuickstart" | "StellarTestnet" | "StellarMainnet"; ... 18 more ...; batch?: ... | undefined; };
network: | "EthereumAnvil"
| "BaseSepolia"
| "StarknetDevnet"
| "StarknetSepolia"
| "StarknetMainnet"
| "StellarQuickstart"
| "StellarTestnet"
| "StellarMainnet";
product: {
batchNumber?: string;
characteristics?: {
[key: string]: unknown;
};
countryOfProduction: {
countryCode: string;
countryName?: string;
};
description?: string;
dimensions?: {
height?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
length?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
volume?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
weight?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
width?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
};
id: string;
idGranularity: "model" | "batch" | "item";
idScheme: {
id: string;
name: string;
type: ["IdentifierScheme"];
};
itemNumber?: string;
materialProvenance?: {
hazardous?: boolean;
mass?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
massFraction: number;
materialSafetyInformation?: {
digestMultibase?: string;
linkName: string;
linkType?: string;
linkURL: string;
mediaType?: string;
};
materialType: {
code: string;
definition?: string;
name: string;
schemeID: string;
schemeName: string;
};
name: string;
originCountry: {
countryCode: string;
countryName?: string;
};
recycledMassFraction?: number;
symbol?: {
description?: string;
imageData: string;
mediaType: string;
name: string;
};
}[];
modelNumber?: string;
name: string;
packaging?: {
description: string;
dimensions: {
height?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
length?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
volume?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
weight?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
width?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
};
materialUsed: {
hazardous?: boolean;
mass?: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
massFraction: number;
materialSafetyInformation?: {
digestMultibase?: string;
linkName: string;
linkType?: string;
linkURL: string;
mediaType?: string;
};
materialType: {
code: string;
definition?: string;
name: string;
schemeID: string;
schemeName: string;
};
name: string;
originCountry: {
countryCode: string;
countryName?: string;
};
recycledMassFraction?: number;
symbol?: {
description?: string;
imageData: string;
mediaType: string;
name: string;
};
}[];
packageLabel?: {
description?: string;
imageData: string;
mediaType: string;
name: string;
}[];
performanceClaim?: {
applicablePeriod?: {
endDate: string;
periodInformation?: string;
startDate: string;
type: ["Period"];
};
claimDate: string;
claimedPerformance: {
measure: {
lowerTolerance?: ... | ...;
unit: string;
upperTolerance?: ... | ...;
value: number;
};
metric: {
id: string;
name: string;
type: [...];
};
score: {
code: string;
definition?: ... | ...;
rank?: ... | ...;
type: [...];
};
type: ["Performance"];
}[];
conformityTopic: {
definition?: string;
id: string;
name: string;
type: ["ConformityTopic"];
}[];
description?: string;
evidence?: {
digestMultibase?: ... | ...;
linkName: string;
linkType?: ... | ...;
linkURL: string;
mediaType?: ... | ...;
}[];
id: string;
name: string;
referenceCriteria: {
id: string;
name: string;
type: ["Criterion"];
}[];
referenceRegulation?: {
id: string;
name: string;
type: [...];
}[];
referenceStandard?: {
id: string;
name: string;
type: [...];
}[];
type: ["Claim"];
}[];
};
performanceClaim?: {
applicablePeriod?: {
endDate: string;
periodInformation?: string;
startDate: string;
type: ["Period"];
};
claimDate: string;
claimedPerformance: {
measure: {
lowerTolerance?: number;
unit: string;
upperTolerance?: number;
value: number;
};
metric: {
id: string;
name: string;
type: ["PerformanceMetric"];
};
score: {
code: string;
definition?: string;
rank?: number;
type: ["Score"];
};
type: ["Performance"];
}[];
conformityTopic: {
definition?: string;
id: string;
name: string;
type: ["ConformityTopic"];
}[];
description?: string;
evidence?: {
digestMultibase?: string;
linkName: string;
linkType?: string;
linkURL: string;
mediaType?: string;
}[];
id: string;
name: string;
referenceCriteria: {
id: string;
name: string;
type: ["Criterion"];
}[];
referenceRegulation?: {
id: string;
name: string;
type: ["Regulation"];
}[];
referenceStandard?: {
id: string;
name: string;
type: ["Standard"];
}[];
type: ["Claim"];
}[];
producedAtFacility: {
id: string;
name: string;
registeredId?: string;
type: ["Facility"];
};
productCategory: {
code: string;
definition?: string;
name: string;
schemeID: string;
schemeName: string;
}[];
productImage?: {
digestMultibase?: string;
linkName: string;
linkType?: string;
linkURL: string;
mediaType?: string;
};
productionDate?: string;
productLabel?: {
description?: string;
imageData: string;
mediaType: string;
name: string;
}[];
relatedDocument?: {
digestMultibase?: string;
linkName: string;
linkType?: string;
linkURL: string;
mediaType?: string;
}[];
relatedParty?: {
party: {
description?: string;
id: string;
idScheme?: {
id: string;
name: string;
type: ["IdentifierScheme"];
};
industryCategory?: {
code: string;
definition?: string;
name: string;
schemeID: string;
schemeName: string;
}[];
name: string;
organisationWebsite?: string;
partyAddress?: {
addressCountry: {
countryCode: string;
countryName?: string;
};
addressLocality: string;
addressRegion: string;
postalCode: string;
streetAddress: string;
};
registeredId?: string;
registrationCountry?: {
countryCode: string;
countryName?: string;
};
type: ["Party"];
};
role: | "owner"
| "producer"
| "manufacturer"
| "processor"
| "remanufacturer"
| "recycler"
| "operator"
| "serviceProvider"
| "inspector"
| "certifier"
| "logisticsProvider"
| "carrier"
| "consignor"
| "consignee"
| "importer"
| "exporter"
| "distributor"
| "retailer"
| "brandOwner"
| "regulator";
}[];
type: ["Product"];
};
source: "manual" | "import" | "shopify";
stats?: {
batches: number;
items: number;
};
status: "draft" | "published" | "claimed" | "archived";
tokenId: string;
updatedAt: string;
vcUrl: string | null;
};

Type Declaration

NameTypeDefault value
actions{ enabled: boolean; icon?: string; id: string; label?: Partial<Record<"en-US""fr-FR", string>>; url?: string; }[]
allowedClaimEmailstringnull
allowedClaimPhoneNumberstringnull
applicationstring-
batch?{ id: string; createdAt: string; updatedAt: string; application: string; network: "EthereumAnvil""BaseSepolia"
certificationStatus"error""pending"
certifiedAtDatenull
certifiedPathsstring[]-
createdAtstring-
data{ [key: string]: unknown; }-
editableboolean-
idstring-
ipfsCidstringnull
lastCertificateHashstringnull
mintedTo?{ address: string; application: string; createdAt: string; dpp: { isActive: boolean; lastActivityAt?: Date
model?{ id: string; createdAt: string; updatedAt: string; application: string; network: "EthereumAnvil""BaseSepolia"
network"EthereumAnvil"
product{ batchNumber?: string; characteristics?: { [key: string]: unknown; }; countryOfProduction: { countryCode: string; countryName?: string; }; description?: string; dimensions?: { height?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; length?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; volume?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; weight?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; width?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; }; id: string; idGranularity: "model""batch"
product.batchNumber?string-
product.characteristics?{ [key: string]: unknown; }-
product.countryOfProduction{ countryCode: string; countryName?: string; }-
product.countryOfProduction.countryCodestring-
product.countryOfProduction.countryName?string-
product.description?string-
product.dimensions?{ height?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; length?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; volume?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; weight?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; width?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; }-
product.dimensions.height?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.dimensions.height.lowerTolerance?number-
product.dimensions.height.unitstring-
product.dimensions.height.upperTolerance?number-
product.dimensions.height.valuenumber-
product.dimensions.length?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.dimensions.length.lowerTolerance?number-
product.dimensions.length.unitstring-
product.dimensions.length.upperTolerance?number-
product.dimensions.length.valuenumber-
product.dimensions.volume?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.dimensions.volume.lowerTolerance?number-
product.dimensions.volume.unitstring-
product.dimensions.volume.upperTolerance?number-
product.dimensions.volume.valuenumber-
product.dimensions.weight?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.dimensions.weight.lowerTolerance?number-
product.dimensions.weight.unitstring-
product.dimensions.weight.upperTolerance?number-
product.dimensions.weight.valuenumber-
product.dimensions.width?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.dimensions.width.lowerTolerance?number-
product.dimensions.width.unitstring-
product.dimensions.width.upperTolerance?number-
product.dimensions.width.valuenumber-
product.idstring-
product.idGranularity"model""batch"
product.idScheme{ id: string; name: string; type: ["IdentifierScheme"]; }-
product.idScheme.idstring-
product.idScheme.namestring-
product.idScheme.type["IdentifierScheme"]-
product.itemNumber?string-
product.materialProvenance?{ hazardous?: boolean; mass?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; massFraction: number; materialSafetyInformation?: { digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }; materialType: { code: string; definition?: string; name: string; schemeID: string; schemeName: string; }; name: string; originCountry: { countryCode: string; countryName?: string; }; recycledMassFraction?: number; symbol?: { description?: string; imageData: string; mediaType: string; name: string; }; }[]-
product.modelNumber?string-
product.namestring-
product.packaging?{ description: string; dimensions: { height?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; length?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; volume?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; weight?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; width?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; }; materialUsed: { hazardous?: boolean; mass?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; massFraction: number; materialSafetyInformation?: { digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }; materialType: { code: string; definition?: string; name: string; schemeID: string; schemeName: string; }; name: string; originCountry: { countryCode: string; countryName?: string; }; recycledMassFraction?: number; symbol?: { description?: string; imageData: string; mediaType: string; name: string; }; }[]; packageLabel?: { description?: string; imageData: string; mediaType: string; name: string; }[]; performanceClaim?: { applicablePeriod?: { endDate: string; periodInformation?: string; startDate: string; type: ["Period"]; }; claimDate: string; claimedPerformance: { measure: { lowerTolerance?: ......; unit: string; upperTolerance?: ...
product.packaging.descriptionstring-
product.packaging.dimensions{ height?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; length?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; volume?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; weight?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; width?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; }-
product.packaging.dimensions.height?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.packaging.dimensions.height.lowerTolerance?number-
product.packaging.dimensions.height.unitstring-
product.packaging.dimensions.height.upperTolerance?number-
product.packaging.dimensions.height.valuenumber-
product.packaging.dimensions.length?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.packaging.dimensions.length.lowerTolerance?number-
product.packaging.dimensions.length.unitstring-
product.packaging.dimensions.length.upperTolerance?number-
product.packaging.dimensions.length.valuenumber-
product.packaging.dimensions.volume?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.packaging.dimensions.volume.lowerTolerance?number-
product.packaging.dimensions.volume.unitstring-
product.packaging.dimensions.volume.upperTolerance?number-
product.packaging.dimensions.volume.valuenumber-
product.packaging.dimensions.weight?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.packaging.dimensions.weight.lowerTolerance?number-
product.packaging.dimensions.weight.unitstring-
product.packaging.dimensions.weight.upperTolerance?number-
product.packaging.dimensions.weight.valuenumber-
product.packaging.dimensions.width?{ lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }-
product.packaging.dimensions.width.lowerTolerance?number-
product.packaging.dimensions.width.unitstring-
product.packaging.dimensions.width.upperTolerance?number-
product.packaging.dimensions.width.valuenumber-
product.packaging.materialUsed{ hazardous?: boolean; mass?: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; massFraction: number; materialSafetyInformation?: { digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }; materialType: { code: string; definition?: string; name: string; schemeID: string; schemeName: string; }; name: string; originCountry: { countryCode: string; countryName?: string; }; recycledMassFraction?: number; symbol?: { description?: string; imageData: string; mediaType: string; name: string; }; }[]-
product.packaging.packageLabel?{ description?: string; imageData: string; mediaType: string; name: string; }[]-
product.packaging.performanceClaim?{ applicablePeriod?: { endDate: string; periodInformation?: string; startDate: string; type: ["Period"]; }; claimDate: string; claimedPerformance: { measure: { lowerTolerance?: ......; unit: string; upperTolerance?: ...
product.performanceClaim?{ applicablePeriod?: { endDate: string; periodInformation?: string; startDate: string; type: ["Period"]; }; claimDate: string; claimedPerformance: { measure: { lowerTolerance?: number; unit: string; upperTolerance?: number; value: number; }; metric: { id: string; name: string; type: ["PerformanceMetric"]; }; score: { code: string; definition?: string; rank?: number; type: ["Score"]; }; type: ["Performance"]; }[]; conformityTopic: { definition?: string; id: string; name: string; type: ["ConformityTopic"]; }[]; description?: string; evidence?: { digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }[]; id: string; name: string; referenceCriteria: { id: string; name: string; type: ["Criterion"]; }[]; referenceRegulation?: { id: string; name: string; type: ["Regulation"]; }[]; referenceStandard?: { id: string; name: string; type: ["Standard"]; }[]; type: ["Claim"]; }[]-
product.producedAtFacility{ id: string; name: string; registeredId?: string; type: ["Facility"]; }-
product.producedAtFacility.idstring-
product.producedAtFacility.namestring-
product.producedAtFacility.registeredId?string-
product.producedAtFacility.type["Facility"]-
product.productCategory{ code: string; definition?: string; name: string; schemeID: string; schemeName: string; }[]-
product.productImage?{ digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }-
product.productImage.digestMultibase?string-
product.productImage.linkNamestring-
product.productImage.linkType?string-
product.productImage.linkURLstring-
product.productImage.mediaType?string-
product.productionDate?string-
product.productLabel?{ description?: string; imageData: string; mediaType: string; name: string; }[]-
product.relatedDocument?{ digestMultibase?: string; linkName: string; linkType?: string; linkURL: string; mediaType?: string; }[]-
product.relatedParty?{ party: { description?: string; id: string; idScheme?: { id: string; name: string; type: ["IdentifierScheme"]; }; industryCategory?: { code: string; definition?: string; name: string; schemeID: string; schemeName: string; }[]; name: string; organisationWebsite?: string; partyAddress?: { addressCountry: { countryCode: string; countryName?: string; }; addressLocality: string; addressRegion: string; postalCode: string; streetAddress: string; }; registeredId?: string; registrationCountry?: { countryCode: string; countryName?: string; }; type: ["Party"]; }; role:"owner"
product.type["Product"]-
source"manual""import"
stats?{ batches: number; items: number; }-
stats.batchesnumber-
stats.itemsnumber-
status"draft""published"
tokenIdstring-
updatedAtstring-
vcUrlstringnull