JS API Reference

Class: OfferProposal

market/proposal/offer-proposal.OfferProposal

Entity representing the offer presented by the Provider to the Requestor

Issue: The final proposal that gets promoted to an agreement comes from the provider Right now the last time I can access it directly is when I receive the counter from the provider, later it's impossible for me to get it via the API {"message":"Path deserialize error: Id [2cb0b2820c6142fab5af7a8e90da09f0] has invalid owner type."}

FIXME #yagna should allow obtaining proposals via the API even if I'm not the owner!

Hierarchy

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

• new OfferProposal(model, demand): OfferProposal

Parameters

NameType
modelProposal
demandDemand

Returns

OfferProposal

Overrides

MarketProposal.constructor

Defined in

src/market/proposal/offer-proposal.ts:44

Properties

issuer

• Readonly issuer: "Provider"

Overrides

MarketProposal.issuer

Defined in

src/market/proposal/offer-proposal.ts:42


demand

• Readonly demand: Demand

Defined in

src/market/proposal/offer-proposal.ts:46


id

• Readonly id: string

Inherited from

MarketProposal.id

Defined in

src/market/proposal/market-proposal.ts:19


previousProposalId

• Readonly previousProposalId: null | string = null

Reference to the previous proposal in the "negotiation chain"

If null, this means that was the initial offer that the negotiations started from

Inherited from

MarketProposal.previousProposalId

Defined in

src/market/proposal/market-proposal.ts:25


properties

• Readonly properties: ProposalProperties

Inherited from

MarketProposal.properties

Defined in

src/market/proposal/market-proposal.ts:29


model

• Protected Readonly model: Proposal

Inherited from

MarketProposal.model

Defined in

src/market/proposal/market-proposal.ts:31

Accessors

pricing

• get pricing(): PricingInfo

Returns

PricingInfo

Defined in

src/market/proposal/offer-proposal.ts:53


provider

• get provider(): ProviderInfo

Returns

ProviderInfo

Defined in

src/market/proposal/offer-proposal.ts:107


state

• get state(): ProposalState

Returns

ProposalState

Inherited from

MarketProposal.state

Defined in

src/market/proposal/market-proposal.ts:37


timestamp

• get timestamp(): Date

Returns

Date

Inherited from

MarketProposal.timestamp

Defined in

src/market/proposal/market-proposal.ts:41

Methods

getDto

▸ getDto(): Partial<{ transferProtocol: string[] ; cpuBrand: string ; cpuCapabilities: string[] ; cpuCores: number ; cpuThreads: number ; memory: number ; storage: number ; publicNet: boolean ; runtimeCapabilities: string[] ; runtimeName: string ; state: ProposalState }>

Returns

Partial<{ transferProtocol: string[] ; cpuBrand: string ; cpuCapabilities: string[] ; cpuCores: number ; cpuThreads: number ; memory: number ; storage: number ; publicNet: boolean ; runtimeCapabilities: string[] ; runtimeName: string ; state: ProposalState }>

Defined in

src/market/proposal/offer-proposal.ts:83


getEstimatedCost

▸ getEstimatedCost(): number

Proposal cost estimation based on CPU, Env and startup costs

Returns

number

Defined in

src/market/proposal/offer-proposal.ts:102


validate

▸ validate(): void

Validates if the proposal satisfies basic business rules, is complete and thus safe to interact with

Use this method before executing any important logic, to ensure that you're working with correct, complete data

Returns

void

Overrides

MarketProposal.validate

Defined in

src/market/proposal/offer-proposal.ts:120


isInitial

▸ isInitial(): boolean

Returns

boolean

Inherited from

MarketProposal.isInitial

Defined in

src/market/proposal/market-proposal.ts:45


isDraft

▸ isDraft(): boolean

Returns

boolean

Inherited from

MarketProposal.isDraft

Defined in

src/market/proposal/market-proposal.ts:49


isExpired

▸ isExpired(): boolean

Returns

boolean

Inherited from

MarketProposal.isExpired

Defined in

src/market/proposal/market-proposal.ts:53


isRejected

▸ isRejected(): boolean

Returns

boolean

Inherited from

MarketProposal.isRejected

Defined in

src/market/proposal/market-proposal.ts:57


isValid

▸ isValid(): boolean

Returns

boolean

Inherited from

MarketProposal.isValid

Defined in

src/market/proposal/market-proposal.ts:61

Was this helpful?