92 lines
No EOL
2 KiB
TypeScript
92 lines
No EOL
2 KiB
TypeScript
import {JWTPayload} from "jose/dist/types/types";
|
|
|
|
export interface Metadata extends JWTPayload{
|
|
|
|
/**
|
|
* Identity of the client used to leave the review, gets populated if not provided.
|
|
*/
|
|
client_id?: string
|
|
|
|
/**
|
|
* Nickname of the reviewer.
|
|
*/
|
|
nickname?: string
|
|
given_name?: string
|
|
family_name?: string
|
|
|
|
age?: number
|
|
|
|
gender?: string
|
|
|
|
/**
|
|
* The context in which the reviewer primarly had the experience with the subject
|
|
*/
|
|
experience_context?: `business` | `family` | `couple` |`friends` | `solo`
|
|
|
|
/**
|
|
* Please set this flag to `true` when the reviewer had direct experience with the subject of the review
|
|
*/
|
|
is_personal_experience?: boolean
|
|
|
|
|
|
/**
|
|
* Please set this flag to `true` when the review is left owner, employee of other affiliated person.
|
|
*/
|
|
is_affiliated?: boolean
|
|
|
|
|
|
/**
|
|
* Please set this flag to `true` when review was automatically generated by a bot.
|
|
*/
|
|
is_generated?: boolean
|
|
|
|
|
|
/** Please provide the source of the review
|
|
* if the review does not originate from the author.
|
|
*/
|
|
data_source?: string
|
|
}
|
|
|
|
export interface Review {
|
|
/**
|
|
* URI of the review subject.
|
|
*/
|
|
sub: string
|
|
/**
|
|
* Rating of subject between 0 and 100.
|
|
*/
|
|
rating?: number
|
|
|
|
/**
|
|
* Opinion of subject with at most 500 characters.
|
|
*/
|
|
opinion?: string
|
|
|
|
/**
|
|
* Unix timestamp of when review was issued,
|
|
* gets filled in automatically if not provided.
|
|
*/
|
|
iat?: number
|
|
|
|
/**
|
|
* Array of up to 5 images to be included.
|
|
*/
|
|
images?: {
|
|
/**
|
|
* Public URL of an image.
|
|
*/
|
|
src: string
|
|
/**
|
|
* Optional label of an image.
|
|
*/
|
|
label?: string
|
|
}[]
|
|
|
|
/**
|
|
* Any {@link Metadata} relating to the issuer or circumstances of leaving review.
|
|
* See the [Mangrove Review Standard](https://mangrove.reviews/standard) for more.
|
|
*/
|
|
metadata?: Metadata
|
|
}
|
|
|
|
|