1"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7040],{4765:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>r,metadata:()=>c,toc:()=>i});const c=JSON.parse('{"id":"contracts/technical-reference/v1.3/types/EscrowTypes","title":"EscrowTypes","description":"The Atlas escrow types","source":"@site/docs/atlas/contracts/technical-reference/v1.3/types/EscrowTypes.md","sourceDirName":"contracts/technical-reference/v1.3/types","slug":"/contracts/technical-reference/v1.3/types/EscrowTypes","permalink":"/atlas/contracts/technical-reference/v1.3/types/EscrowTypes","draft":false,"unlisted":false,"tags":[],"version":"current","sidebarPosition":8,"frontMatter":{"title":"EscrowTypes","description":"The Atlas escrow types","sidebar_position":8},"sidebar":"atlasSidebar","previous":{"title":"ConfigTypes","permalink":"/atlas/contracts/technical-reference/v1.3/types/ConfigTypes"},"next":{"title":"LockTypes","permalink":"/atlas/contracts/technical-reference/v1.3/types/LockTypes"}}');var s=t(74848),o=t(28453);const r={title:"EscrowTypes",description:"The Atlas escrow types",sidebar_position:8},a="Solidity API",l={},i=[{value:"EscrowAccountBalance",id:"escrowaccountbalance",level:2},{value:"EscrowAccountAccessData",id:"escrowaccountaccessdata",level:2},{value:"SolverTracker",id:"solvertracker",level:2},{value:"SolverOutcome",id:"solveroutcome",level:2}];function d(e){const n={code:"code",em:"em",h1:"h1",h2:"h2",header:"header",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"solidity-api",children:"Solidity API"})}),"\n",(0,s.jsx)(n.h2,{id:"escrowaccountbalance",children:"EscrowAccountBalance"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-solidity",children:"struct EscrowAccountBalance {\n uint112 balance;\n uint112 unbonding;\n}\n"})}),"\n",(0,s.jsx)(n.h2,{id:"escrowaccountaccessdata",children:"EscrowAccountAccessData"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-solidity",children:"struct EscrowAccountAccessData {\n uint112 bonded;\n uint32 lastAccessedBlock;\n uint24 auctionWins;\n uint24 auctionFails;\n uint64 totalGasValueUsed;\n}\n"})}),"\n",(0,s.jsx)(n.h2,{id:"solvertracker",children:"SolverTracker"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-solidity",children:"struct SolverTracker {\n uint256 bidAmount;\n uint256 floor;\n uint256 ceiling;\n bool etherIsBidToken;\n bool invertsBidValue;\n}\n"})}),"\n",(0,s.jsx)(n.h2,{id:"solveroutcome",children:"SolverOutcome"}),"\n",(0,s.jsx)(n.p,{children:"Enum for SolverOutcome"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.em,{children:"Multiple SolverOutcomes can be used to represent the outcome of a solver call\nTypical usage looks like solverOutcome = (1 << SolverOutcome.InvalidSignature) | (1 <<\nSolverOutcome.InvalidUserHash) to indicate SolverOutcome.InvalidSignature and SolverOutcome.InvalidUserHash"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-solidity",children:"enum SolverOutcome {\n InvalidSignature,\n InvalidUserHash,\n DeadlinePassedAlt,\n GasPriceBelowUsersAlt,\n InvalidTo,\n UserOutOfGas,\n AlteredControl,\n AltOpHashMismatch,\n DeadlinePassed,\n GasPriceOverCap,\n InvalidSolver,\n InvalidBidToken,\n PerBlockLimit,\n InsufficientEscrow,\n GasPriceBelowUsers,\n CallValueTooHigh,\n PreSolverFailed,\n SolverOpReverted,\n PostSolverFailed,\n BidNotPaid,\n InvertedBidExceedsCeiling,\n BalanceNotReconciled,\n CallbackNotCalled,\n EVMError\n}\n"})})]})}function u(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},28453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var c=t(96540);const s={},o=c.createContext(s);function r(e){const n=c.useContext(o);return c.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),c.createElement(o.Provider,{value:n},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.