import * as pulumi from '@pulumi/pulumi';
import type { ItemType } from '@aleph-sdk/message';
import type { Volume } from './volumes';
export interface InstanceInputs {
    channel: pulumi.Input<string>;
    authorizedKeys: pulumi.Input<string[]>;
    memory: pulumi.Input<number>;
    image: pulumi.Input<string>;
    volumes: pulumi.Input<Array<Volume>>;
    storageEngine: pulumi.Input<ItemType.storage | ItemType.ipfs>;
    accountEnvName: pulumi.Input<string>;
}
export interface InstanceOutputs {
    channel: string;
    authorizedKeys: string[];
    memory: number;
    image: string;
    volumes: Array<Volume>;
    storageEngine: ItemType.storage | ItemType.ipfs;
    accountEnvName: string;
    chain: string;
    sender: string;
    type: string;
    item_hash: string;
    aleph_explorer_url: string;
}
export declare const getDefaultImage: () => string;
export declare class Instance extends pulumi.dynamic.Resource {
    readonly channel: pulumi.Output<string>;
    readonly authorizedKeys: pulumi.Output<string[]>;
    readonly memory: pulumi.Output<number>;
    readonly image: pulumi.Output<string>;
    readonly volumes: pulumi.Output<Array<Volume>>;
    readonly storageEngine: pulumi.Output<ItemType.storage | ItemType.ipfs>;
    readonly accountEnvName: pulumi.Output<string>;
    readonly chain: pulumi.Output<string>;
    readonly sender: pulumi.Output<string>;
    readonly type: pulumi.Output<string>;
    readonly item_hash: pulumi.Output<string>;
    readonly aleph_explorer_url: pulumi.Output<string>;
    constructor(name: string, args: InstanceInputs, opts?: pulumi.CustomResourceOptions);
}
