import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
 * Provides details about a Linode Firewall.
 * For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-firewall).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as linode from "@pulumi/linode";
 *
 * const my_firewall = linode.getFirewall({
 *     id: 123,
 * });
 * ```
 */
export declare function getFirewall(args: GetFirewallArgs, opts?: pulumi.InvokeOptions): Promise<GetFirewallResult>;
/**
 * A collection of arguments for invoking getFirewall.
 */
export interface GetFirewallArgs {
    /**
     * The Firewall's ID.
     */
    id: number;
}
/**
 * A collection of values returned by getFirewall.
 */
export interface GetFirewallResult {
    /**
     * When this firewall was created.
     */
    readonly created: string;
    readonly devices: outputs.GetFirewallDevice[];
    /**
     * If true, the firewall is inactive.
     */
    readonly disabled: boolean;
    /**
     * The ID of the Firewall Device.
     */
    readonly id: number;
    /**
     * The default behavior for inbound traffic. (`ACCEPT`, `DROP`)
     */
    readonly inboundPolicy: string;
    readonly inbounds: outputs.GetFirewallInbound[];
    /**
     * The label of the underlying entity this device references.
     */
    readonly label: string;
    /**
     * The IDs of Linodes assigned to this Firewall.
     */
    readonly linodes: number[];
    /**
     * The IDs of NodeBalancers assigned to this Firewall.
     */
    readonly nodebalancers: number[];
    /**
     * The default behavior for outbound traffic. (`ACCEPT`, `DROP`)
     */
    readonly outboundPolicy: string;
    readonly outbounds: outputs.GetFirewallOutbound[];
    /**
     * The status of the firewall. (`enabled`, `disabled`, `deleted`)
     */
    readonly status: string;
    /**
     * The tags applied to the firewall. Tags are case-insensitive and are for organizational purposes only.
     */
    readonly tags: string[];
    /**
     * When this firewall was last updated.
     */
    readonly updated: string;
}
/**
 * Provides details about a Linode Firewall.
 * For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-firewall).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as linode from "@pulumi/linode";
 *
 * const my_firewall = linode.getFirewall({
 *     id: 123,
 * });
 * ```
 */
export declare function getFirewallOutput(args: GetFirewallOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetFirewallResult>;
/**
 * A collection of arguments for invoking getFirewall.
 */
export interface GetFirewallOutputArgs {
    /**
     * The Firewall's ID.
     */
    id: pulumi.Input<number>;
}
