| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- CREATE TABLE mint (
- mint_url TEXT PRIMARY KEY, name TEXT,
- pubkey BYTEA, version TEXT, description TEXT,
- description_long TEXT, contact TEXT,
- nuts TEXT, motd TEXT, icon_url TEXT,
- mint_time INTEGER, urls TEXT, tos_url TEXT
- );
- CREATE TABLE keyset (
- id TEXT PRIMARY KEY,
- mint_url TEXT NOT NULL,
- unit TEXT NOT NULL,
- active BOOL NOT NULL,
- counter INTEGER NOT NULL DEFAULT 0,
- input_fee_ppk INTEGER,
- final_expiry INTEGER DEFAULT NULL,
- FOREIGN KEY(mint_url) REFERENCES mint(mint_url) ON UPDATE CASCADE ON DELETE CASCADE
- );
- CREATE TABLE melt_quote (
- id TEXT PRIMARY KEY,
- unit TEXT NOT NULL,
- amount INTEGER NOT NULL,
- request TEXT NOT NULL,
- fee_reserve INTEGER NOT NULL,
- expiry INTEGER NOT NULL,
- state TEXT CHECK (
- state IN ('UNPAID', 'PENDING', 'PAID')
- ) NOT NULL DEFAULT 'UNPAID',
- payment_preimage TEXT
- );
- CREATE TABLE key (
- id TEXT PRIMARY KEY, keys TEXT NOT NULL
- );
- CREATE INDEX melt_quote_state_index ON melt_quote(state);
- CREATE TABLE IF NOT EXISTS "proof" (
- y BYTEA PRIMARY KEY,
- mint_url TEXT NOT NULL,
- state TEXT CHECK (
- state IN (
- 'SPENT', 'UNSPENT', 'PENDING', 'RESERVED',
- 'PENDING_SPENT'
- )
- ) NOT NULL,
- spending_condition TEXT,
- unit TEXT NOT NULL,
- amount INTEGER NOT NULL,
- keyset_id TEXT NOT NULL,
- secret TEXT NOT NULL,
- c BYTEA NOT NULL,
- witness TEXT,
- dleq_e BYTEA,
- dleq_s BYTEA,
- dleq_r BYTEA
- );
- CREATE TABLE transactions (
- id BYTEA PRIMARY KEY,
- mint_url TEXT NOT NULL,
- direction TEXT CHECK (
- direction IN ('Incoming', 'Outgoing')
- ) NOT NULL,
- amount INTEGER NOT NULL,
- fee INTEGER NOT NULL,
- unit TEXT NOT NULL,
- ys BYTEA NOT NULL,
- timestamp INTEGER NOT NULL,
- memo TEXT,
- metadata TEXT
- );
- CREATE INDEX mint_url_index ON transactions(mint_url);
- CREATE INDEX direction_index ON transactions(direction);
- CREATE INDEX unit_index ON transactions(unit);
- CREATE INDEX timestamp_index ON transactions(timestamp);
- CREATE TABLE IF NOT EXISTS "mint_quote" (
- id TEXT PRIMARY KEY, mint_url TEXT NOT NULL,
- payment_method TEXT NOT NULL DEFAULT 'bolt11',
- amount INTEGER, unit TEXT NOT NULL,
- request TEXT NOT NULL, state TEXT NOT NULL,
- expiry INTEGER NOT NULL, amount_paid INTEGER NOT NULL DEFAULT 0,
- amount_issued INTEGER NOT NULL DEFAULT 0,
- secret_key TEXT
- );
|