@junobuild/admin
Version:
A library for interfacing with admin features of Juno
232 lines (230 loc) • 7.95 kB
TypeScript
import type {ActorMethod} from '@dfinity/agent';
import type {IDL} from '@dfinity/candid';
import type {Principal} from '@dfinity/principal';
export interface Account {
owner: Principal;
subaccount: [] | [Uint8Array | number[]];
}
export interface Config {
monitoring: [] | [MonitoringConfig];
}
export interface Controller {
updated_at: bigint;
metadata: Array<[string, string]>;
created_at: bigint;
scope: ControllerScope;
expires_at: [] | [bigint];
}
export type ControllerScope = {Write: null} | {Admin: null};
export interface CreateCanisterConfig {
subnet_id: [] | [Principal];
name: [] | [string];
}
export interface CyclesBalance {
timestamp: bigint;
amount: bigint;
}
export interface CyclesMonitoring {
strategy: [] | [CyclesMonitoringStrategy];
enabled: boolean;
}
export interface CyclesMonitoringConfig {
notification: [] | [DepositedCyclesEmailNotification];
default_strategy: [] | [CyclesMonitoringStrategy];
}
export interface CyclesMonitoringStartConfig {
orbiters_strategy: [] | [SegmentsMonitoringStrategy];
mission_control_strategy: [] | [CyclesMonitoringStrategy];
satellites_strategy: [] | [SegmentsMonitoringStrategy];
}
export interface CyclesMonitoringStatus {
monitored_ids: Array<Principal>;
running: boolean;
}
export interface CyclesMonitoringStopConfig {
satellite_ids: [] | [Array<Principal>];
try_mission_control: [] | [boolean];
orbiter_ids: [] | [Array<Principal>];
}
export type CyclesMonitoringStrategy = {BelowThreshold: CyclesThreshold};
export interface CyclesThreshold {
fund_cycles: bigint;
min_cycles: bigint;
}
export interface DepositCyclesArgs {
cycles: bigint;
destination_id: Principal;
}
export interface DepositedCyclesEmailNotification {
to: [] | [string];
enabled: boolean;
}
export interface GetMonitoringHistory {
to: [] | [bigint];
from: [] | [bigint];
segment_id: Principal;
}
export interface MissionControlSettings {
updated_at: bigint;
created_at: bigint;
monitoring: [] | [Monitoring];
}
export interface Monitoring {
cycles: [] | [CyclesMonitoring];
}
export interface MonitoringConfig {
cycles: [] | [CyclesMonitoringConfig];
}
export interface MonitoringHistory {
cycles: [] | [MonitoringHistoryCycles];
}
export interface MonitoringHistoryCycles {
deposited_cycles: [] | [CyclesBalance];
cycles: CyclesBalance;
}
export interface MonitoringHistoryKey {
segment_id: Principal;
created_at: bigint;
nonce: number;
}
export interface MonitoringStartConfig {
cycles_config: [] | [CyclesMonitoringStartConfig];
}
export interface MonitoringStatus {
cycles: [] | [CyclesMonitoringStatus];
}
export interface MonitoringStopConfig {
cycles_config: [] | [CyclesMonitoringStopConfig];
}
export interface Orbiter {
updated_at: bigint;
orbiter_id: Principal;
metadata: Array<[string, string]>;
created_at: bigint;
settings: [] | [Settings];
}
export type Result = {Ok: bigint} | {Err: TransferError};
export type Result_1 = {Ok: bigint} | {Err: TransferError_1};
export interface Satellite {
updated_at: bigint;
metadata: Array<[string, string]>;
created_at: bigint;
satellite_id: Principal;
settings: [] | [Settings];
}
export interface SegmentsMonitoringStrategy {
ids: Array<Principal>;
strategy: CyclesMonitoringStrategy;
}
export interface SetController {
metadata: Array<[string, string]>;
scope: ControllerScope;
expires_at: [] | [bigint];
}
export interface Settings {
monitoring: [] | [Monitoring];
}
export interface Timestamp {
timestamp_nanos: bigint;
}
export interface Tokens {
e8s: bigint;
}
export interface TransferArg {
to: Account;
fee: [] | [bigint];
memo: [] | [Uint8Array | number[]];
from_subaccount: [] | [Uint8Array | number[]];
created_at_time: [] | [bigint];
amount: bigint;
}
export interface TransferArgs {
to: Uint8Array | number[];
fee: Tokens;
memo: bigint;
from_subaccount: [] | [Uint8Array | number[]];
created_at_time: [] | [Timestamp];
amount: Tokens;
}
export type TransferError =
| {
TxTooOld: {allowed_window_nanos: bigint};
}
| {BadFee: {expected_fee: Tokens}}
| {TxDuplicate: {duplicate_of: bigint}}
| {TxCreatedInFuture: null}
| {InsufficientFunds: {balance: Tokens}};
export type TransferError_1 =
| {
GenericError: {message: string; error_code: bigint};
}
| {TemporarilyUnavailable: null}
| {BadBurn: {min_burn_amount: bigint}}
| {Duplicate: {duplicate_of: bigint}}
| {BadFee: {expected_fee: bigint}}
| {CreatedInFuture: {ledger_time: bigint}}
| {TooOld: null}
| {InsufficientFunds: {balance: bigint}};
export interface User {
updated_at: bigint;
metadata: Array<[string, string]>;
user: [] | [Principal];
created_at: bigint;
config: [] | [Config];
}
export interface _SERVICE {
add_mission_control_controllers: ActorMethod<[Array<Principal>], undefined>;
add_satellites_controllers: ActorMethod<[Array<Principal>, Array<Principal>], undefined>;
create_orbiter: ActorMethod<[[] | [string]], Orbiter>;
create_orbiter_with_config: ActorMethod<[CreateCanisterConfig], Orbiter>;
create_satellite: ActorMethod<[string], Satellite>;
create_satellite_with_config: ActorMethod<[CreateCanisterConfig], Satellite>;
del_mission_control_controllers: ActorMethod<[Array<Principal>], undefined>;
del_orbiter: ActorMethod<[Principal, bigint], undefined>;
del_orbiters_controllers: ActorMethod<[Array<Principal>, Array<Principal>], undefined>;
del_satellite: ActorMethod<[Principal, bigint], undefined>;
del_satellites_controllers: ActorMethod<[Array<Principal>, Array<Principal>], undefined>;
deposit_cycles: ActorMethod<[DepositCyclesArgs], undefined>;
get_config: ActorMethod<[], [] | [Config]>;
get_metadata: ActorMethod<[], Array<[string, string]>>;
get_monitoring_history: ActorMethod<
[GetMonitoringHistory],
Array<[MonitoringHistoryKey, MonitoringHistory]>
>;
get_monitoring_status: ActorMethod<[], MonitoringStatus>;
get_settings: ActorMethod<[], [] | [MissionControlSettings]>;
get_user: ActorMethod<[], Principal>;
get_user_data: ActorMethod<[], User>;
icp_transfer: ActorMethod<[TransferArgs], Result>;
icrc_transfer: ActorMethod<[Principal, TransferArg], Result_1>;
list_mission_control_controllers: ActorMethod<[], Array<[Principal, Controller]>>;
list_orbiters: ActorMethod<[], Array<[Principal, Orbiter]>>;
list_satellites: ActorMethod<[], Array<[Principal, Satellite]>>;
remove_mission_control_controllers: ActorMethod<[Array<Principal>], undefined>;
remove_satellites_controllers: ActorMethod<[Array<Principal>, Array<Principal>], undefined>;
set_config: ActorMethod<[[] | [Config]], undefined>;
set_metadata: ActorMethod<[Array<[string, string]>], undefined>;
set_mission_control_controllers: ActorMethod<[Array<Principal>, SetController], undefined>;
set_orbiter: ActorMethod<[Principal, [] | [string]], Orbiter>;
set_orbiter_metadata: ActorMethod<[Principal, Array<[string, string]>], Orbiter>;
set_orbiters_controllers: ActorMethod<
[Array<Principal>, Array<Principal>, SetController],
undefined
>;
set_satellite: ActorMethod<[Principal, [] | [string]], Satellite>;
set_satellite_metadata: ActorMethod<[Principal, Array<[string, string]>], Satellite>;
set_satellites_controllers: ActorMethod<
[Array<Principal>, Array<Principal>, SetController],
undefined
>;
start_monitoring: ActorMethod<[], undefined>;
stop_monitoring: ActorMethod<[], undefined>;
top_up: ActorMethod<[Principal, Tokens], undefined>;
unset_orbiter: ActorMethod<[Principal], undefined>;
unset_satellite: ActorMethod<[Principal], undefined>;
update_and_start_monitoring: ActorMethod<[MonitoringStartConfig], undefined>;
update_and_stop_monitoring: ActorMethod<[MonitoringStopConfig], undefined>;
version: ActorMethod<[], string>;
}
export declare const idlFactory: IDL.InterfaceFactory;
export declare const init: (args: {IDL: typeof IDL}) => IDL.Type[];