Type alias ProposalDTO

ProposalDTO: {
    constraints: string;
    properties: Record<string, any>;
} & {
    issuerId: string;
    prevProposalId?: string;
    proposalId: string;
    state: "Initial" | "Draft" | "Rejected" | "Accepted" | "Expired";
    timestamp: string;
}

Type declaration

  • constraints: string
  • properties: Record<string, any>

    The object which includes all the Demand/Offer/Proposal properties. This is a JSON object in "flat convention" - where keys are full property names and their values indicate properties.

    The value's Javascript type shall conform with the type of the property (as indicated in Golem Standards).

    Example property object:

    {
    * "golem.com.pricing.model":"linear",
    * "golem.com.pricing.model.linear.coeffs":[0.001, 0.002, 0.0],
    * "golem.com.scheme":"payu",
    * "golem.com.scheme.payu.interval_sec":6.0,
    * "golem.com.usage.vector":["golem.usage.duration_sec","golem.usage.cpu_sec"],
    * "golem.inf.cpu.architecture":"x86_64",
    * "golem.inf.cpu.cores":4,
    * "golem.inf.cpu.threads":7,
    * "golem.inf.mem.gib":10.612468048930168,
    * "golem.inf.storage.gib":81.7227783203125,
    * "golem.node.debug.subnet":"market-devnet",
    * "golem.node.id.name":"tworec@mf-market-devnet",
    * "golem.runtime.name":"vm",
    * "golem.runtime.version@v":"0.1.0"
    * }
    * ```
    *

Type declaration

  • Readonly issuerId: string
  • Optional prevProposalId?: string

    id of the proposal from other side which this proposal responds to

  • Readonly proposalId: string
  • Readonly state: "Initial" | "Draft" | "Rejected" | "Accepted" | "Expired"
    • Initial - proposal arrived from the market as response to subscription
    • Draft - bespoke counter-proposal issued by one party directly to other party (negotiation phase)
    • Rejected by other party
    • Accepted - promoted into the Agreement draft
    • Expired - not accepted nor rejected before validity period
  • timestamp: string