import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
export declare function getTwingateResource(args: GetTwingateResourceArgs, opts?: pulumi.InvokeOptions): Promise<GetTwingateResourceResult>;
/**
 * A collection of arguments for invoking getTwingateResource.
 */
export interface GetTwingateResourceArgs {
    id: string;
    protocols?: inputs.GetTwingateResourceProtocol[];
}
/**
 * A collection of values returned by getTwingateResource.
 */
export interface GetTwingateResourceResult {
    readonly address: string;
    readonly id: string;
    readonly name: string;
    readonly protocols?: outputs.GetTwingateResourceProtocol[];
    readonly remoteNetworkId: string;
}
export declare function getTwingateResourceOutput(args: GetTwingateResourceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetTwingateResourceResult>;
/**
 * A collection of arguments for invoking getTwingateResource.
 */
export interface GetTwingateResourceOutputArgs {
    id: pulumi.Input<string>;
    protocols?: pulumi.Input<pulumi.Input<inputs.GetTwingateResourceProtocolArgs>[]>;
}
